apache-airflow-providers-apache-hive 9.2.1__tar.gz → 9.2.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/PKG-INFO +6 -6
  2. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/README.rst +3 -3
  3. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/docs/changelog.rst +11 -0
  4. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/docs/index.rst +3 -3
  5. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/provider.yaml +2 -1
  6. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/pyproject.toml +3 -3
  7. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/hive/__init__.py +1 -1
  8. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/hive/hooks/hive.py +23 -0
  9. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/unit/apache/hive/hooks/test_hive.py +21 -0
  10. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/LICENSE +0 -0
  11. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/NOTICE +0 -0
  12. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/docs/.latest-doc-only-change.txt +0 -0
  13. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/docs/commits.rst +0 -0
  14. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/docs/conf.py +0 -0
  15. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/docs/configurations-ref.rst +0 -0
  16. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/docs/connections/hive_cli.rst +0 -0
  17. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/docs/connections/hive_metastore.rst +0 -0
  18. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/docs/connections/hiveserver2.rst +0 -0
  19. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/docs/connections/index.rst +0 -0
  20. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/docs/installing-providers-from-sources.rst +0 -0
  21. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/docs/integration-logos/hive.png +0 -0
  22. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/docs/macros.rst +0 -0
  23. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/docs/operators.rst +0 -0
  24. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/docs/security.rst +0 -0
  25. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/__init__.py +0 -0
  26. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/__init__.py +0 -0
  27. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/__init__.py +0 -0
  28. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/hive/get_provider_info.py +0 -0
  29. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/hive/hooks/__init__.py +0 -0
  30. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/hive/macros/__init__.py +0 -0
  31. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/hive/macros/hive.py +0 -0
  32. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/hive/operators/__init__.py +0 -0
  33. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/hive/operators/hive.py +0 -0
  34. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/hive/operators/hive_stats.py +0 -0
  35. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/hive/plugins/__init__.py +0 -0
  36. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/hive/plugins/hive.py +0 -0
  37. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/hive/sensors/__init__.py +0 -0
  38. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/hive/sensors/hive_partition.py +0 -0
  39. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/hive/sensors/metastore_partition.py +0 -0
  40. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/hive/sensors/named_hive_partition.py +0 -0
  41. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/hive/transfers/__init__.py +0 -0
  42. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/hive/transfers/hive_to_mysql.py +0 -0
  43. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/hive/transfers/hive_to_samba.py +0 -0
  44. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/hive/transfers/mssql_to_hive.py +0 -0
  45. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/hive/transfers/mysql_to_hive.py +0 -0
  46. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/hive/transfers/s3_to_hive.py +0 -0
  47. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/hive/transfers/vertica_to_hive.py +0 -0
  48. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/src/airflow/providers/apache/hive/version_compat.py +0 -0
  49. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/conftest.py +0 -0
  50. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/integration/__init__.py +0 -0
  51. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/integration/apache/__init__.py +0 -0
  52. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/integration/apache/hive/__init__.py +0 -0
  53. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/integration/apache/hive/transfers/__init__.py +0 -0
  54. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/integration/apache/hive/transfers/test_mssql_to_hive.py +0 -0
  55. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/system/__init__.py +0 -0
  56. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/system/apache/__init__.py +0 -0
  57. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/system/apache/hive/__init__.py +0 -0
  58. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/system/apache/hive/example_hive.py +0 -0
  59. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/system/apache/hive/example_twitter_README.md +0 -0
  60. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/system/apache/hive/example_twitter_dag.py +0 -0
  61. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/unit/__init__.py +0 -0
  62. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/unit/apache/__init__.py +0 -0
  63. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/unit/apache/hive/__init__.py +0 -0
  64. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/unit/apache/hive/hooks/__init__.py +0 -0
  65. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/unit/apache/hive/hooks/query_results.csv +0 -0
  66. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/unit/apache/hive/macros/__init__.py +0 -0
  67. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/unit/apache/hive/macros/test_hive.py +0 -0
  68. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/unit/apache/hive/operators/__init__.py +0 -0
  69. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/unit/apache/hive/operators/test_hive.py +0 -0
  70. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/unit/apache/hive/operators/test_hive_stats.py +0 -0
  71. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/unit/apache/hive/sensors/__init__.py +0 -0
  72. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/unit/apache/hive/sensors/test_hive_partition.py +0 -0
  73. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/unit/apache/hive/sensors/test_metastore_partition.py +0 -0
  74. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/unit/apache/hive/sensors/test_named_hive_partition.py +0 -0
  75. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/unit/apache/hive/transfers/__init__.py +0 -0
  76. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/unit/apache/hive/transfers/test_hive_to_mysql.py +0 -0
  77. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/unit/apache/hive/transfers/test_hive_to_samba.py +0 -0
  78. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/unit/apache/hive/transfers/test_mssql_to_hive.py +0 -0
  79. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/unit/apache/hive/transfers/test_mysql_to_hive.py +0 -0
  80. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/unit/apache/hive/transfers/test_s3_to_hive.py +0 -0
  81. {apache_airflow_providers_apache_hive-9.2.1 → apache_airflow_providers_apache_hive-9.2.2}/tests/unit/apache/hive/transfers/test_vertica_to_hive.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: apache-airflow-providers-apache-hive
3
- Version: 9.2.1
3
+ Version: 9.2.2
4
4
  Summary: Provider package apache-airflow-providers-apache-hive for Apache Airflow
5
5
  Keywords: airflow-provider,apache.hive,airflow,integration
6
6
  Author-email: Apache Software Foundation <dev@airflow.apache.org>
@@ -40,8 +40,8 @@ Requires-Dist: apache-airflow-providers-presto ; extra == "presto"
40
40
  Requires-Dist: apache-airflow-providers-samba ; extra == "samba"
41
41
  Requires-Dist: apache-airflow-providers-vertica ; extra == "vertica"
42
42
  Project-URL: Bug Tracker, https://github.com/apache/airflow/issues
43
- Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.2.1/changelog.html
44
- Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.2.1
43
+ Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.2.2/changelog.html
44
+ Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.2.2
45
45
  Project-URL: Mastodon, https://fosstodon.org/@airflow
46
46
  Project-URL: Slack Chat, https://s.apache.org/airflow-slack
47
47
  Project-URL: Source Code, https://github.com/apache/airflow
@@ -80,7 +80,7 @@ Provides-Extra: vertica
80
80
 
81
81
  Package ``apache-airflow-providers-apache-hive``
82
82
 
83
- Release: ``9.2.1``
83
+ Release: ``9.2.2``
84
84
 
85
85
 
86
86
  `Apache Hive <https://hive.apache.org/>`__
@@ -93,7 +93,7 @@ This is a provider package for ``apache.hive`` provider. All classes for this pr
93
93
  are in ``airflow.providers.apache.hive`` python package.
94
94
 
95
95
  You can find package information and changelog for the provider
96
- in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.2.1/>`_.
96
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.2.2/>`_.
97
97
 
98
98
  Installation
99
99
  ------------
@@ -163,5 +163,5 @@ Extra Dependencies
163
163
  =================== =============================================================================================
164
164
 
165
165
  The changelog for the provider package can be found in the
166
- `changelog <https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.2.1/changelog.html>`_.
166
+ `changelog <https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.2.2/changelog.html>`_.
167
167
 
@@ -23,7 +23,7 @@
23
23
 
24
24
  Package ``apache-airflow-providers-apache-hive``
25
25
 
26
- Release: ``9.2.1``
26
+ Release: ``9.2.2``
27
27
 
28
28
 
29
29
  `Apache Hive <https://hive.apache.org/>`__
@@ -36,7 +36,7 @@ This is a provider package for ``apache.hive`` provider. All classes for this pr
36
36
  are in ``airflow.providers.apache.hive`` python package.
37
37
 
38
38
  You can find package information and changelog for the provider
39
- in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.2.1/>`_.
39
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.2.2/>`_.
40
40
 
41
41
  Installation
42
42
  ------------
@@ -106,4 +106,4 @@ Extra Dependencies
106
106
  =================== =============================================================================================
107
107
 
108
108
  The changelog for the provider package can be found in the
109
- `changelog <https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.2.1/changelog.html>`_.
109
+ `changelog <https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.2.2/changelog.html>`_.
@@ -27,6 +27,17 @@
27
27
  Changelog
28
28
  ---------
29
29
 
30
+ 9.2.2
31
+ .....
32
+
33
+ Bug Fixes
34
+ ~~~~~~~~~
35
+
36
+ * ``Fix apache hive server2 hook for sqlalchemy URL (#59878)``
37
+
38
+ .. Below changes are excluded from the changelog. Move them to
39
+ appropriate section above if needed. Do not delete the lines(!):
40
+
30
41
  9.2.1
31
42
  .....
32
43
 
@@ -79,7 +79,7 @@ apache-airflow-providers-apache-hive package
79
79
  `Apache Hive <https://hive.apache.org/>`__
80
80
 
81
81
 
82
- Release: 9.2.1
82
+ Release: 9.2.2
83
83
 
84
84
  Provider package
85
85
  ----------------
@@ -144,5 +144,5 @@ Downloading official packages
144
144
  You can download officially released packages and verify their checksums and signatures from the
145
145
  `Official Apache Download site <https://downloads.apache.org/airflow/providers/>`_
146
146
 
147
- * `The apache-airflow-providers-apache-hive 9.2.1 sdist package <https://downloads.apache.org/airflow/providers/apache_airflow_providers_apache_hive-9.2.1.tar.gz>`_ (`asc <https://downloads.apache.org/airflow/providers/apache_airflow_providers_apache_hive-9.2.1.tar.gz.asc>`__, `sha512 <https://downloads.apache.org/airflow/providers/apache_airflow_providers_apache_hive-9.2.1.tar.gz.sha512>`__)
148
- * `The apache-airflow-providers-apache-hive 9.2.1 wheel package <https://downloads.apache.org/airflow/providers/apache_airflow_providers_apache_hive-9.2.1-py3-none-any.whl>`_ (`asc <https://downloads.apache.org/airflow/providers/apache_airflow_providers_apache_hive-9.2.1-py3-none-any.whl.asc>`__, `sha512 <https://downloads.apache.org/airflow/providers/apache_airflow_providers_apache_hive-9.2.1-py3-none-any.whl.sha512>`__)
147
+ * `The apache-airflow-providers-apache-hive 9.2.2 sdist package <https://downloads.apache.org/airflow/providers/apache_airflow_providers_apache_hive-9.2.2.tar.gz>`_ (`asc <https://downloads.apache.org/airflow/providers/apache_airflow_providers_apache_hive-9.2.2.tar.gz.asc>`__, `sha512 <https://downloads.apache.org/airflow/providers/apache_airflow_providers_apache_hive-9.2.2.tar.gz.sha512>`__)
148
+ * `The apache-airflow-providers-apache-hive 9.2.2 wheel package <https://downloads.apache.org/airflow/providers/apache_airflow_providers_apache_hive-9.2.2-py3-none-any.whl>`_ (`asc <https://downloads.apache.org/airflow/providers/apache_airflow_providers_apache_hive-9.2.2-py3-none-any.whl.asc>`__, `sha512 <https://downloads.apache.org/airflow/providers/apache_airflow_providers_apache_hive-9.2.2-py3-none-any.whl.sha512>`__)
@@ -22,12 +22,13 @@ description: |
22
22
  `Apache Hive <https://hive.apache.org/>`__
23
23
 
24
24
  state: ready
25
- source-date-epoch: 1765298778
25
+ source-date-epoch: 1767123195
26
26
  # Note that those versions are maintained by release manager - do not update them manually
27
27
  # with the exception of case where other provider in sources has >= new provider version.
28
28
  # In such case adding >= NEW_VERSION and bumping to NEW_VERSION in a provider have
29
29
  # to be done in the same PR
30
30
  versions:
31
+ - 9.2.2
31
32
  - 9.2.1
32
33
  - 9.2.0
33
34
  - 9.1.4
@@ -25,7 +25,7 @@ build-backend = "flit_core.buildapi"
25
25
 
26
26
  [project]
27
27
  name = "apache-airflow-providers-apache-hive"
28
- version = "9.2.1"
28
+ version = "9.2.2"
29
29
  description = "Provider package apache-airflow-providers-apache-hive for Apache Airflow"
30
30
  readme = "README.rst"
31
31
  license = "Apache-2.0"
@@ -141,8 +141,8 @@ apache-airflow-providers-common-sql = {workspace = true}
141
141
  apache-airflow-providers-standard = {workspace = true}
142
142
 
143
143
  [project.urls]
144
- "Documentation" = "https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.2.1"
145
- "Changelog" = "https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.2.1/changelog.html"
144
+ "Documentation" = "https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.2.2"
145
+ "Changelog" = "https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.2.2/changelog.html"
146
146
  "Bug Tracker" = "https://github.com/apache/airflow/issues"
147
147
  "Source Code" = "https://github.com/apache/airflow"
148
148
  "Slack Chat" = "https://s.apache.org/airflow-slack"
@@ -29,7 +29,7 @@ from airflow import __version__ as airflow_version
29
29
 
30
30
  __all__ = ["__version__"]
31
31
 
32
- __version__ = "9.2.1"
32
+ __version__ = "9.2.2"
33
33
 
34
34
  if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
35
35
  "2.11.0"
@@ -29,6 +29,7 @@ from tempfile import NamedTemporaryFile, TemporaryDirectory
29
29
  from typing import TYPE_CHECKING, Any, Literal
30
30
 
31
31
  from deprecated import deprecated
32
+ from sqlalchemy.engine import URL
32
33
  from typing_extensions import overload
33
34
 
34
35
  from airflow.configuration import conf
@@ -1131,3 +1132,25 @@ class HiveServer2Hook(DbApiHook):
1131
1132
  **kwargs,
1132
1133
  ) -> pd.DataFrame:
1133
1134
  return self._get_pandas_df(sql, schema=schema, hive_conf=hive_conf, **kwargs)
1135
+
1136
+ @property
1137
+ def sqlalchemy_url(self) -> URL:
1138
+ """Return a `sqlalchemy.engine.URL` object constructed from the connection."""
1139
+ conn = self.get_connection(self.get_conn_id())
1140
+ extra = conn.extra_dejson or {}
1141
+
1142
+ query = {k: str(v) for k, v in extra.items() if v is not None and k != "__extra__"}
1143
+
1144
+ return URL.create(
1145
+ drivername="hive",
1146
+ username=conn.login,
1147
+ password=conn.password,
1148
+ host=conn.host,
1149
+ port=conn.port,
1150
+ database=conn.schema,
1151
+ query=query,
1152
+ )
1153
+
1154
+ def get_uri(self) -> str:
1155
+ """Return a SQLAlchemy engine URL as a string."""
1156
+ return self.sqlalchemy_url.render_as_string(hide_password=False)
@@ -885,6 +885,27 @@ class TestHiveServer2Hook:
885
885
  assert f"test_{date_key}" in output
886
886
  assert "test_dag_run_id" in output
887
887
 
888
+ def test_sqlalchemy_uri(self):
889
+ """Test sqlalchemy_url with connection parameters"""
890
+
891
+ with mock.patch.object(HiveServer2Hook, "get_connection") as mock_get_conn:
892
+ mock_get_conn.return_value = Connection(
893
+ conn_id="test_hive_conn",
894
+ conn_type="hive_cli",
895
+ host="localhost",
896
+ port=10000,
897
+ schema="default",
898
+ login="admin",
899
+ password="admin",
900
+ )
901
+ hook = HiveServer2Hook()
902
+ uri = hook.sqlalchemy_url
903
+ assert uri.host == "localhost"
904
+ assert uri.port == 10000
905
+ assert uri.database == "default"
906
+ assert uri.username == "admin"
907
+ assert uri.password == "admin"
908
+
888
909
 
889
910
  @pytest.mark.db_test
890
911
  @mock.patch.dict("os.environ", AIRFLOW__CORE__SECURITY="kerberos")