Simplify `airflow_version` imports (#39497)

Use `importlib.metadata.version` to get `airflow_version`. This is a more standardized approach to getting the version.
diff --git a/airflow/providers/airbyte/__init__.py b/airflow/providers/airbyte/__init__.py
index 7bbe4f9..0e0d1b3 100644
--- a/airflow/providers/airbyte/__init__.py
+++ b/airflow/providers/airbyte/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.8.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/alibaba/__init__.py b/airflow/providers/alibaba/__init__.py
index 70e71d6..214d1fb 100644
--- a/airflow/providers/alibaba/__init__.py
+++ b/airflow/providers/alibaba/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "2.8.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/amazon/__init__.py b/airflow/providers/amazon/__init__.py
index b8f82a4..5148fc4 100644
--- a/airflow/providers/amazon/__init__.py
+++ b/airflow/providers/amazon/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "8.21.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/apache/beam/__init__.py b/airflow/providers/apache/beam/__init__.py
index 836cac3..0293d16 100644
--- a/airflow/providers/apache/beam/__init__.py
+++ b/airflow/providers/apache/beam/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "5.7.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/apache/cassandra/__init__.py b/airflow/providers/apache/cassandra/__init__.py
index 0162052..87b6b0c 100644
--- a/airflow/providers/apache/cassandra/__init__.py
+++ b/airflow/providers/apache/cassandra/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.5.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/apache/drill/__init__.py b/airflow/providers/apache/drill/__init__.py
index 97c4882..df1c996 100644
--- a/airflow/providers/apache/drill/__init__.py
+++ b/airflow/providers/apache/drill/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "2.7.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/apache/druid/__init__.py b/airflow/providers/apache/druid/__init__.py
index edbe317..333e1f6 100644
--- a/airflow/providers/apache/druid/__init__.py
+++ b/airflow/providers/apache/druid/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.10.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/apache/flink/__init__.py b/airflow/providers/apache/flink/__init__.py
index a7c71da..df0e681 100644
--- a/airflow/providers/apache/flink/__init__.py
+++ b/airflow/providers/apache/flink/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "1.4.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/apache/hdfs/__init__.py b/airflow/providers/apache/hdfs/__init__.py
index d803c06..2e0a685 100644
--- a/airflow/providers/apache/hdfs/__init__.py
+++ b/airflow/providers/apache/hdfs/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "4.4.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/apache/hive/__init__.py b/airflow/providers/apache/hive/__init__.py
index f60216c..bad3dbe 100644
--- a/airflow/providers/apache/hive/__init__.py
+++ b/airflow/providers/apache/hive/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "8.1.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/apache/impala/__init__.py b/airflow/providers/apache/impala/__init__.py
index 2c8672b..286df46 100644
--- a/airflow/providers/apache/impala/__init__.py
+++ b/airflow/providers/apache/impala/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "1.4.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/apache/kafka/__init__.py b/airflow/providers/apache/kafka/__init__.py
index c160f41..be1be77 100644
--- a/airflow/providers/apache/kafka/__init__.py
+++ b/airflow/providers/apache/kafka/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "1.4.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/apache/kylin/__init__.py b/airflow/providers/apache/kylin/__init__.py
index 710b1c9..0fb935e 100644
--- a/airflow/providers/apache/kylin/__init__.py
+++ b/airflow/providers/apache/kylin/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.6.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/apache/livy/__init__.py b/airflow/providers/apache/livy/__init__.py
index 7baa7e6..af449a4 100644
--- a/airflow/providers/apache/livy/__init__.py
+++ b/airflow/providers/apache/livy/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.8.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/apache/pig/__init__.py b/airflow/providers/apache/pig/__init__.py
index bfa072e..0a870a3 100644
--- a/airflow/providers/apache/pig/__init__.py
+++ b/airflow/providers/apache/pig/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "4.4.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/apache/pinot/__init__.py b/airflow/providers/apache/pinot/__init__.py
index 16328e8..8f9db5c 100644
--- a/airflow/providers/apache/pinot/__init__.py
+++ b/airflow/providers/apache/pinot/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "4.4.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/apache/spark/__init__.py b/airflow/providers/apache/spark/__init__.py
index 253318a..2a28692 100644
--- a/airflow/providers/apache/spark/__init__.py
+++ b/airflow/providers/apache/spark/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "4.8.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/apprise/__init__.py b/airflow/providers/apprise/__init__.py
index 8af563c..440c130 100644
--- a/airflow/providers/apprise/__init__.py
+++ b/airflow/providers/apprise/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "1.3.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/arangodb/__init__.py b/airflow/providers/arangodb/__init__.py
index cc0ed15..e87e109 100644
--- a/airflow/providers/arangodb/__init__.py
+++ b/airflow/providers/arangodb/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "2.5.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/asana/__init__.py b/airflow/providers/asana/__init__.py
index 3b95d89..a6db494 100644
--- a/airflow/providers/asana/__init__.py
+++ b/airflow/providers/asana/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "2.5.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/atlassian/jira/__init__.py b/airflow/providers/atlassian/jira/__init__.py
index 03f0691..4cc0d04 100644
--- a/airflow/providers/atlassian/jira/__init__.py
+++ b/airflow/providers/atlassian/jira/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "2.6.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/celery/__init__.py b/airflow/providers/celery/__init__.py
index ffb71ee..f3a794e 100644
--- a/airflow/providers/celery/__init__.py
+++ b/airflow/providers/celery/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.7.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/celery/executors/__init__.py b/airflow/providers/celery/executors/__init__.py
index 56c59e5..8d14611 100644
--- a/airflow/providers/celery/executors/__init__.py
+++ b/airflow/providers/celery/executors/__init__.py
@@ -16,15 +16,13 @@
 # under the License.
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 from airflow.exceptions import AirflowOptionalProviderFeatureException
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
-
+airflow_version = importlib.metadata.version("apache-airflow")
 base_version = packaging.version.parse(airflow_version).base_version
 
 if packaging.version.parse(base_version) < packaging.version.parse("2.7.0"):
diff --git a/airflow/providers/celery/executors/celery_executor.py b/airflow/providers/celery/executors/celery_executor.py
index 1d4342f..4bd0a9f 100644
--- a/airflow/providers/celery/executors/celery_executor.py
+++ b/airflow/providers/celery/executors/celery_executor.py
@@ -52,15 +52,13 @@
         lazy_load_command,
     )
 except ImportError:
-    try:
-        from airflow import __version__ as airflow_version
-    except ImportError:
-        from airflow.version import version as airflow_version
+    import importlib.metadata
 
     import packaging.version
 
     from airflow.exceptions import AirflowOptionalProviderFeatureException
 
+    airflow_version = importlib.metadata.version("apache-airflow")
     base_version = packaging.version.parse(airflow_version).base_version
 
     if packaging.version.parse(base_version) < packaging.version.parse("2.7.0"):
diff --git a/airflow/providers/cloudant/__init__.py b/airflow/providers/cloudant/__init__.py
index a2a499d..ec0dded 100644
--- a/airflow/providers/cloudant/__init__.py
+++ b/airflow/providers/cloudant/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.5.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/cncf/kubernetes/__init__.py b/airflow/providers/cncf/kubernetes/__init__.py
index 784a5ad..bad8b41 100644
--- a/airflow/providers/cncf/kubernetes/__init__.py
+++ b/airflow/providers/cncf/kubernetes/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "8.2.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/cncf/kubernetes/executors/kubernetes_executor.py b/airflow/providers/cncf/kubernetes/executors/kubernetes_executor.py
index f9bf574..cac2b85 100644
--- a/airflow/providers/cncf/kubernetes/executors/kubernetes_executor.py
+++ b/airflow/providers/cncf/kubernetes/executors/kubernetes_executor.py
@@ -55,15 +55,13 @@
         positive_int,
     )
 except ImportError:
-    try:
-        from airflow import __version__ as airflow_version
-    except ImportError:
-        from airflow.version import version as airflow_version
+    import importlib.metadata
 
     import packaging.version
 
     from airflow.exceptions import AirflowOptionalProviderFeatureException
 
+    airflow_version = importlib.metadata.version("apache-airflow")
     base_version = packaging.version.parse(airflow_version).base_version
 
     if packaging.version.parse(base_version) < packaging.version.parse("2.7.0"):
diff --git a/airflow/providers/cohere/__init__.py b/airflow/providers/cohere/__init__.py
index 8d9978d..c3d9b6b 100644
--- a/airflow/providers/cohere/__init__.py
+++ b/airflow/providers/cohere/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "1.2.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/common/io/__init__.py b/airflow/providers/common/io/__init__.py
index 357e6d8..fe4ebf0 100644
--- a/airflow/providers/common/io/__init__.py
+++ b/airflow/providers/common/io/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "1.3.1"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.8.0"
diff --git a/airflow/providers/common/io/xcom/__init__.py b/airflow/providers/common/io/xcom/__init__.py
index b046051..fb8148b 100644
--- a/airflow/providers/common/io/xcom/__init__.py
+++ b/airflow/providers/common/io/xcom/__init__.py
@@ -16,14 +16,13 @@
 # under the License.
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 from airflow.exceptions import AirflowOptionalProviderFeatureException
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.9.0"
diff --git a/airflow/providers/common/sql/__init__.py b/airflow/providers/common/sql/__init__.py
index 4dc61fd..7163046 100644
--- a/airflow/providers/common/sql/__init__.py
+++ b/airflow/providers/common/sql/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "1.13.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/databricks/__init__.py b/airflow/providers/databricks/__init__.py
index dbf0416..e7c61a3 100644
--- a/airflow/providers/databricks/__init__.py
+++ b/airflow/providers/databricks/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "6.4.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/datadog/__init__.py b/airflow/providers/datadog/__init__.py
index 098dec6..eeeb8cb 100644
--- a/airflow/providers/datadog/__init__.py
+++ b/airflow/providers/datadog/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.6.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/dbt/cloud/__init__.py b/airflow/providers/dbt/cloud/__init__.py
index 5084024..740d82b 100644
--- a/airflow/providers/dbt/cloud/__init__.py
+++ b/airflow/providers/dbt/cloud/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.8.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/dingding/__init__.py b/airflow/providers/dingding/__init__.py
index 4c5d5e9..d1d2250 100644
--- a/airflow/providers/dingding/__init__.py
+++ b/airflow/providers/dingding/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.5.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/discord/__init__.py b/airflow/providers/discord/__init__.py
index 60c37d3..f3ecad8 100644
--- a/airflow/providers/discord/__init__.py
+++ b/airflow/providers/discord/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.7.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/docker/__init__.py b/airflow/providers/docker/__init__.py
index 8e5dc7a..2f9089e 100644
--- a/airflow/providers/docker/__init__.py
+++ b/airflow/providers/docker/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.11.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/elasticsearch/__init__.py b/airflow/providers/elasticsearch/__init__.py
index 03f3ae7..16cefb3 100644
--- a/airflow/providers/elasticsearch/__init__.py
+++ b/airflow/providers/elasticsearch/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "5.4.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/exasol/__init__.py b/airflow/providers/exasol/__init__.py
index 4358b4a..cc52085 100644
--- a/airflow/providers/exasol/__init__.py
+++ b/airflow/providers/exasol/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "4.5.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/fab/__init__.py b/airflow/providers/fab/__init__.py
index 30cf692..420f49d 100644
--- a/airflow/providers/fab/__init__.py
+++ b/airflow/providers/fab/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "1.1.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.9.0"
diff --git a/airflow/providers/facebook/__init__.py b/airflow/providers/facebook/__init__.py
index bc9adc4..9e1d29e 100644
--- a/airflow/providers/facebook/__init__.py
+++ b/airflow/providers/facebook/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.5.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/ftp/__init__.py b/airflow/providers/ftp/__init__.py
index ed2e551..33c8d16 100644
--- a/airflow/providers/ftp/__init__.py
+++ b/airflow/providers/ftp/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.9.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/github/__init__.py b/airflow/providers/github/__init__.py
index 41d9e39..deaf9e1 100644
--- a/airflow/providers/github/__init__.py
+++ b/airflow/providers/github/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "2.6.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/google/__init__.py b/airflow/providers/google/__init__.py
index f17df0c..1b815c1 100644
--- a/airflow/providers/google/__init__.py
+++ b/airflow/providers/google/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "10.18.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/grpc/__init__.py b/airflow/providers/grpc/__init__.py
index b677273..ea0e3a5 100644
--- a/airflow/providers/grpc/__init__.py
+++ b/airflow/providers/grpc/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.5.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/hashicorp/__init__.py b/airflow/providers/hashicorp/__init__.py
index 623ca74..42b9b57 100644
--- a/airflow/providers/hashicorp/__init__.py
+++ b/airflow/providers/hashicorp/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.7.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/http/__init__.py b/airflow/providers/http/__init__.py
index 0913d28..66ccde6 100644
--- a/airflow/providers/http/__init__.py
+++ b/airflow/providers/http/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "4.11.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/imap/__init__.py b/airflow/providers/imap/__init__.py
index 5df4478..d33ec6f 100644
--- a/airflow/providers/imap/__init__.py
+++ b/airflow/providers/imap/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.6.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/influxdb/__init__.py b/airflow/providers/influxdb/__init__.py
index ae313cf..0286873 100644
--- a/airflow/providers/influxdb/__init__.py
+++ b/airflow/providers/influxdb/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "2.5.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/jdbc/__init__.py b/airflow/providers/jdbc/__init__.py
index 25962ef..1917b3e 100644
--- a/airflow/providers/jdbc/__init__.py
+++ b/airflow/providers/jdbc/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "4.3.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/jenkins/__init__.py b/airflow/providers/jenkins/__init__.py
index 6e046eb..142fec5 100644
--- a/airflow/providers/jenkins/__init__.py
+++ b/airflow/providers/jenkins/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.6.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/microsoft/azure/__init__.py b/airflow/providers/microsoft/azure/__init__.py
index 7e5cb62..1e2f790 100644
--- a/airflow/providers/microsoft/azure/__init__.py
+++ b/airflow/providers/microsoft/azure/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "10.1.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/microsoft/mssql/__init__.py b/airflow/providers/microsoft/mssql/__init__.py
index 8ed711a..d053ea7 100644
--- a/airflow/providers/microsoft/mssql/__init__.py
+++ b/airflow/providers/microsoft/mssql/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.7.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/microsoft/psrp/__init__.py b/airflow/providers/microsoft/psrp/__init__.py
index a5d9e90..921c4a5 100644
--- a/airflow/providers/microsoft/psrp/__init__.py
+++ b/airflow/providers/microsoft/psrp/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "2.7.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/microsoft/winrm/__init__.py b/airflow/providers/microsoft/winrm/__init__.py
index eb7ae32..0b0e3ea 100644
--- a/airflow/providers/microsoft/winrm/__init__.py
+++ b/airflow/providers/microsoft/winrm/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.5.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/mongo/__init__.py b/airflow/providers/mongo/__init__.py
index f2a3a6d..d761988 100644
--- a/airflow/providers/mongo/__init__.py
+++ b/airflow/providers/mongo/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "4.1.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/mysql/__init__.py b/airflow/providers/mysql/__init__.py
index dcc1235..cb6f3ad 100644
--- a/airflow/providers/mysql/__init__.py
+++ b/airflow/providers/mysql/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "5.6.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/neo4j/__init__.py b/airflow/providers/neo4j/__init__.py
index f4f25f5..b2689bc 100644
--- a/airflow/providers/neo4j/__init__.py
+++ b/airflow/providers/neo4j/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.6.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/odbc/__init__.py b/airflow/providers/odbc/__init__.py
index 884a8c4..665d021 100644
--- a/airflow/providers/odbc/__init__.py
+++ b/airflow/providers/odbc/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "4.6.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/openai/__init__.py b/airflow/providers/openai/__init__.py
index 280e183..819546e 100644
--- a/airflow/providers/openai/__init__.py
+++ b/airflow/providers/openai/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "1.2.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/openfaas/__init__.py b/airflow/providers/openfaas/__init__.py
index c3b246a..d62150d 100644
--- a/airflow/providers/openfaas/__init__.py
+++ b/airflow/providers/openfaas/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.5.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/openlineage/__init__.py b/airflow/providers/openlineage/__init__.py
index 18e76a3..7b1fc1e 100644
--- a/airflow/providers/openlineage/__init__.py
+++ b/airflow/providers/openlineage/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "1.7.1"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/opensearch/__init__.py b/airflow/providers/opensearch/__init__.py
index 2012859..980e3d5 100644
--- a/airflow/providers/opensearch/__init__.py
+++ b/airflow/providers/opensearch/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "1.2.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/opsgenie/__init__.py b/airflow/providers/opsgenie/__init__.py
index 746d2be..458f676 100644
--- a/airflow/providers/opsgenie/__init__.py
+++ b/airflow/providers/opsgenie/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "5.6.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/oracle/__init__.py b/airflow/providers/oracle/__init__.py
index 94c2b0a..d17413a 100644
--- a/airflow/providers/oracle/__init__.py
+++ b/airflow/providers/oracle/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.10.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/pagerduty/__init__.py b/airflow/providers/pagerduty/__init__.py
index 2b70ec1..97d6072 100644
--- a/airflow/providers/pagerduty/__init__.py
+++ b/airflow/providers/pagerduty/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.7.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/papermill/__init__.py b/airflow/providers/papermill/__init__.py
index d906255..0a2cee7 100644
--- a/airflow/providers/papermill/__init__.py
+++ b/airflow/providers/papermill/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.7.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/pgvector/__init__.py b/airflow/providers/pgvector/__init__.py
index af898c4..6d8e4ae 100644
--- a/airflow/providers/pgvector/__init__.py
+++ b/airflow/providers/pgvector/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "1.2.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/pinecone/__init__.py b/airflow/providers/pinecone/__init__.py
index 6650f12..c68d4e6 100644
--- a/airflow/providers/pinecone/__init__.py
+++ b/airflow/providers/pinecone/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "2.0.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/postgres/__init__.py b/airflow/providers/postgres/__init__.py
index c2cbc1f..ec9e4c1 100644
--- a/airflow/providers/postgres/__init__.py
+++ b/airflow/providers/postgres/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "5.11.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/presto/__init__.py b/airflow/providers/presto/__init__.py
index 1903f64..8510ebf 100644
--- a/airflow/providers/presto/__init__.py
+++ b/airflow/providers/presto/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "5.5.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/qdrant/__init__.py b/airflow/providers/qdrant/__init__.py
index 5c579b9..1c5ed55 100644
--- a/airflow/providers/qdrant/__init__.py
+++ b/airflow/providers/qdrant/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "1.1.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/redis/__init__.py b/airflow/providers/redis/__init__.py
index 387c079..2836130 100644
--- a/airflow/providers/redis/__init__.py
+++ b/airflow/providers/redis/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.7.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/salesforce/__init__.py b/airflow/providers/salesforce/__init__.py
index 228f5a3..5de51bd 100644
--- a/airflow/providers/salesforce/__init__.py
+++ b/airflow/providers/salesforce/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "5.7.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/samba/__init__.py b/airflow/providers/samba/__init__.py
index 9347819..219223d 100644
--- a/airflow/providers/samba/__init__.py
+++ b/airflow/providers/samba/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "4.7.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/segment/__init__.py b/airflow/providers/segment/__init__.py
index c2fa385..b36d880 100644
--- a/airflow/providers/segment/__init__.py
+++ b/airflow/providers/segment/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.5.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/sendgrid/__init__.py b/airflow/providers/sendgrid/__init__.py
index a2b2702..90ad886 100644
--- a/airflow/providers/sendgrid/__init__.py
+++ b/airflow/providers/sendgrid/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.5.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/sftp/__init__.py b/airflow/providers/sftp/__init__.py
index 7807fab..a5e7266 100644
--- a/airflow/providers/sftp/__init__.py
+++ b/airflow/providers/sftp/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "4.10.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/singularity/__init__.py b/airflow/providers/singularity/__init__.py
index f075dcb..9367b42 100644
--- a/airflow/providers/singularity/__init__.py
+++ b/airflow/providers/singularity/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.5.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/slack/__init__.py b/airflow/providers/slack/__init__.py
index 8ecf9eb..8f4730f 100644
--- a/airflow/providers/slack/__init__.py
+++ b/airflow/providers/slack/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "8.7.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/smtp/__init__.py b/airflow/providers/smtp/__init__.py
index 667f080..22da6a1 100644
--- a/airflow/providers/smtp/__init__.py
+++ b/airflow/providers/smtp/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "1.7.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/snowflake/__init__.py b/airflow/providers/snowflake/__init__.py
index 2fd7332..50cbf40 100644
--- a/airflow/providers/snowflake/__init__.py
+++ b/airflow/providers/snowflake/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "5.5.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/sqlite/__init__.py b/airflow/providers/sqlite/__init__.py
index f58c0ec..b128455 100644
--- a/airflow/providers/sqlite/__init__.py
+++ b/airflow/providers/sqlite/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.8.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/ssh/__init__.py b/airflow/providers/ssh/__init__.py
index 9dd6778..405804d 100644
--- a/airflow/providers/ssh/__init__.py
+++ b/airflow/providers/ssh/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.11.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/tableau/__init__.py b/airflow/providers/tableau/__init__.py
index 897f338..5ef56c3 100644
--- a/airflow/providers/tableau/__init__.py
+++ b/airflow/providers/tableau/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "4.5.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/tabular/__init__.py b/airflow/providers/tabular/__init__.py
index ac63463..8985e10 100644
--- a/airflow/providers/tabular/__init__.py
+++ b/airflow/providers/tabular/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "1.5.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/telegram/__init__.py b/airflow/providers/telegram/__init__.py
index f7b27cd..0f11131 100644
--- a/airflow/providers/telegram/__init__.py
+++ b/airflow/providers/telegram/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "4.5.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/teradata/__init__.py b/airflow/providers/teradata/__init__.py
index b2068a7..3786b36 100644
--- a/airflow/providers/teradata/__init__.py
+++ b/airflow/providers/teradata/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "2.1.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/trino/__init__.py b/airflow/providers/trino/__init__.py
index 22a4d4a..68c7dc9 100644
--- a/airflow/providers/trino/__init__.py
+++ b/airflow/providers/trino/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "5.7.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/vertica/__init__.py b/airflow/providers/vertica/__init__.py
index 56cd240..747a044 100644
--- a/airflow/providers/vertica/__init__.py
+++ b/airflow/providers/vertica/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.8.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/weaviate/__init__.py b/airflow/providers/weaviate/__init__.py
index 08bf94d..bb919cb 100644
--- a/airflow/providers/weaviate/__init__.py
+++ b/airflow/providers/weaviate/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "1.4.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/yandex/__init__.py b/airflow/providers/yandex/__init__.py
index abb63fe..c530acf 100644
--- a/airflow/providers/yandex/__init__.py
+++ b/airflow/providers/yandex/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "3.11.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/airflow/providers/zendesk/__init__.py b/airflow/providers/zendesk/__init__.py
index 64ff8de..f98ac81 100644
--- a/airflow/providers/zendesk/__init__.py
+++ b/airflow/providers/zendesk/__init__.py
@@ -23,16 +23,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "4.7.0"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version("apache-airflow")
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "2.7.0"
diff --git a/dev/breeze/src/airflow_breeze/templates/PROVIDER__INIT__PY_TEMPLATE.py.jinja2 b/dev/breeze/src/airflow_breeze/templates/PROVIDER__INIT__PY_TEMPLATE.py.jinja2
index 9acce62..7117b28 100644
--- a/dev/breeze/src/airflow_breeze/templates/PROVIDER__INIT__PY_TEMPLATE.py.jinja2
+++ b/dev/breeze/src/airflow_breeze/templates/PROVIDER__INIT__PY_TEMPLATE.py.jinja2
@@ -42,16 +42,15 @@
 #
 from __future__ import annotations
 
+import importlib.metadata
+
 import packaging.version
 
 __all__ = ["__version__"]
 
 __version__ = "{{ RELEASE }}{{ VERSION_SUFFIX }}"
 
-try:
-    from airflow import __version__ as airflow_version
-except ImportError:
-    from airflow.version import version as airflow_version
+airflow_version = importlib.metadata.version('apache-airflow')
 
 if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
     "{{ MIN_AIRFLOW_VERSION }}"