apache-airflow-providers-apache-hive 9.1.1__py3-none-any.whl → 9.1.2__py3-none-any.whl

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.
@@ -29,7 +29,7 @@ from airflow import __version__ as airflow_version
29
29
 
30
30
  __all__ = ["__version__"]
31
31
 
32
- __version__ = "9.1.1"
32
+ __version__ = "9.1.2"
33
33
 
34
34
  if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
35
35
  "2.10.0"
@@ -38,13 +38,8 @@ import csv
38
38
 
39
39
  from airflow.configuration import conf
40
40
  from airflow.exceptions import AirflowException, AirflowProviderDeprecationWarning
41
- from airflow.providers.apache.hive.version_compat import AIRFLOW_VAR_NAME_FORMAT_MAPPING
41
+ from airflow.providers.apache.hive.version_compat import AIRFLOW_VAR_NAME_FORMAT_MAPPING, BaseHook
42
42
  from airflow.providers.common.sql.hooks.sql import DbApiHook
43
-
44
- try:
45
- from airflow.sdk import BaseHook
46
- except ImportError:
47
- from airflow.hooks.base import BaseHook # type: ignore[attr-defined,no-redef]
48
43
  from airflow.security import utils
49
44
  from airflow.utils.helpers import as_flattened_list
50
45
 
@@ -870,7 +865,7 @@ class HiveServer2Hook(DbApiHook):
870
865
  username: str | None = None
871
866
  password: str | None = None
872
867
 
873
- db = self.get_connection(self.hiveserver2_conn_id) # type: ignore
868
+ db = self.get_connection(self.get_conn_id())
874
869
 
875
870
  auth_mechanism = db.extra_dejson.get("auth_mechanism", "NONE")
876
871
  if auth_mechanism == "NONE" and db.login is None:
@@ -912,7 +907,7 @@ class HiveServer2Hook(DbApiHook):
912
907
  with contextlib.closing(self.get_conn(schema)) as conn, contextlib.closing(conn.cursor()) as cur:
913
908
  cur.arraysize = fetch_size or 1000
914
909
 
915
- db = self.get_connection(self.hiveserver2_conn_id) # type: ignore
910
+ db = self.get_connection(self.get_conn_id())
916
911
  # Not all query services (e.g. impala) support the set command
917
912
  if db.extra_dejson.get("run_set_variable_statements", True):
918
913
  env_context = get_context_from_env_var()
@@ -1034,9 +1029,10 @@ class HiveServer2Hook(DbApiHook):
1034
1029
  schema = kwargs["schema"] if "schema" in kwargs else "default"
1035
1030
  return self.get_results(sql, schema=schema, hive_conf=parameters)["data"]
1036
1031
 
1037
- def _get_pandas_df( # type: ignore
1032
+ def _get_pandas_df(
1038
1033
  self,
1039
- sql: str,
1034
+ sql,
1035
+ parameters: list[Any] | tuple[Any, ...] | Mapping[str, Any] | None = None,
1040
1036
  schema: str = "default",
1041
1037
  hive_conf: dict[Any, Any] | None = None,
1042
1038
  **kwargs,
@@ -1052,9 +1048,10 @@ class HiveServer2Hook(DbApiHook):
1052
1048
  df = pd.DataFrame(res["data"], columns=[c[0] for c in res["header"]], **kwargs)
1053
1049
  return df
1054
1050
 
1055
- def _get_polars_df( # type: ignore
1051
+ def _get_polars_df(
1056
1052
  self,
1057
- sql: str,
1053
+ sql,
1054
+ parameters: list[Any] | tuple[Any, ...] | Mapping[str, Any] | None = None,
1058
1055
  schema: str = "default",
1059
1056
  hive_conf: dict[Any, Any] | None = None,
1060
1057
  **kwargs,
@@ -1081,7 +1078,7 @@ class HiveServer2Hook(DbApiHook):
1081
1078
  **kwargs: Any,
1082
1079
  ) -> pd.DataFrame: ...
1083
1080
 
1084
- @overload # type: ignore[override]
1081
+ @overload
1085
1082
  def get_df(
1086
1083
  self,
1087
1084
  sql: str,
@@ -1092,7 +1089,7 @@ class HiveServer2Hook(DbApiHook):
1092
1089
  **kwargs: Any,
1093
1090
  ) -> pl.DataFrame: ...
1094
1091
 
1095
- def get_df( # type: ignore
1092
+ def get_df(
1096
1093
  self,
1097
1094
  sql: str,
1098
1095
  schema: str = "default",
@@ -23,7 +23,7 @@ import csv
23
23
  from collections.abc import Sequence
24
24
  from contextlib import closing
25
25
  from tempfile import NamedTemporaryFile
26
- from typing import TYPE_CHECKING
26
+ from typing import TYPE_CHECKING, Literal
27
27
 
28
28
  try:
29
29
  import MySQLdb
@@ -97,7 +97,7 @@ class MySqlToHiveOperator(BaseOperator):
97
97
  recreate: bool = False,
98
98
  partition: dict | None = None,
99
99
  delimiter: str = chr(1),
100
- quoting: int | None = None,
100
+ quoting: Literal[0, 1, 2, 3] = csv.QUOTE_MINIMAL,
101
101
  quotechar: str = '"',
102
102
  escapechar: str | None = None,
103
103
  mysql_conn_id: str = "mysql_default",
@@ -113,7 +113,7 @@ class MySqlToHiveOperator(BaseOperator):
113
113
  self.create = create
114
114
  self.recreate = recreate
115
115
  self.delimiter = str(delimiter)
116
- self.quoting = quoting or csv.QUOTE_MINIMAL
116
+ self.quoting = quoting
117
117
  self.quotechar = quotechar
118
118
  self.escapechar = escapechar
119
119
  self.mysql_conn_id = mysql_conn_id
@@ -33,6 +33,12 @@ def get_base_airflow_version_tuple() -> tuple[int, int, int]:
33
33
 
34
34
 
35
35
  AIRFLOW_V_3_0_PLUS = get_base_airflow_version_tuple() >= (3, 0, 0)
36
+ AIRFLOW_V_3_1_PLUS: bool = get_base_airflow_version_tuple() >= (3, 1, 0)
37
+
38
+ if AIRFLOW_V_3_1_PLUS:
39
+ from airflow.sdk import BaseHook
40
+ else:
41
+ from airflow.hooks.base import BaseHook # type: ignore[attr-defined,no-redef]
36
42
 
37
43
  if AIRFLOW_V_3_0_PLUS:
38
44
  from airflow.sdk import BaseOperator, BaseSensorOperator
@@ -48,6 +54,8 @@ else:
48
54
 
49
55
  __all__ = [
50
56
  "AIRFLOW_V_3_0_PLUS",
57
+ "AIRFLOW_V_3_1_PLUS",
58
+ "BaseHook",
51
59
  "BaseOperator",
52
60
  "BaseSensorOperator",
53
61
  "AIRFLOW_VAR_NAME_FORMAT_MAPPING",
@@ -1,11 +1,11 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: apache-airflow-providers-apache-hive
3
- Version: 9.1.1
3
+ Version: 9.1.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>
7
7
  Maintainer-email: Apache Software Foundation <dev@airflow.apache.org>
8
- Requires-Python: ~=3.10
8
+ Requires-Python: >=3.10
9
9
  Description-Content-Type: text/x-rst
10
10
  Classifier: Development Status :: 5 - Production/Stable
11
11
  Classifier: Environment :: Console
@@ -18,10 +18,13 @@ Classifier: License :: OSI Approved :: Apache Software License
18
18
  Classifier: Programming Language :: Python :: 3.10
19
19
  Classifier: Programming Language :: Python :: 3.11
20
20
  Classifier: Programming Language :: Python :: 3.12
21
+ Classifier: Programming Language :: Python :: 3.13
21
22
  Classifier: Topic :: System :: Monitoring
22
23
  Requires-Dist: apache-airflow>=2.10.0
23
24
  Requires-Dist: apache-airflow-providers-common-sql>=1.26.0
24
25
  Requires-Dist: hmsclient>=0.1.0
26
+ Requires-Dist: pandas>=2.1.2; python_version <"3.13"
27
+ Requires-Dist: pandas>=2.2.3; python_version >="3.13"
25
28
  Requires-Dist: pyhive[hive-pure-sasl]>=0.7.0
26
29
  Requires-Dist: thrift>=0.11.0
27
30
  Requires-Dist: jmespath>=0.7.0
@@ -33,8 +36,8 @@ Requires-Dist: apache-airflow-providers-presto ; extra == "presto"
33
36
  Requires-Dist: apache-airflow-providers-samba ; extra == "samba"
34
37
  Requires-Dist: apache-airflow-providers-vertica ; extra == "vertica"
35
38
  Project-URL: Bug Tracker, https://github.com/apache/airflow/issues
36
- Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.1.1/changelog.html
37
- Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.1.1
39
+ Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.1.2/changelog.html
40
+ Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.1.2
38
41
  Project-URL: Mastodon, https://fosstodon.org/@airflow
39
42
  Project-URL: Slack Chat, https://s.apache.org/airflow-slack
40
43
  Project-URL: Source Code, https://github.com/apache/airflow
@@ -72,8 +75,9 @@ Provides-Extra: vertica
72
75
 
73
76
  Package ``apache-airflow-providers-apache-hive``
74
77
 
75
- Release: ``9.1.1``
78
+ Release: ``9.1.2``
76
79
 
80
+ Release Date: ``|PypiReleaseDate|``
77
81
 
78
82
  `Apache Hive <https://hive.apache.org/>`__
79
83
 
@@ -85,7 +89,7 @@ This is a provider package for ``apache.hive`` provider. All classes for this pr
85
89
  are in ``airflow.providers.apache.hive`` python package.
86
90
 
87
91
  You can find package information and changelog for the provider
88
- in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.1.1/>`_.
92
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.1.2/>`_.
89
93
 
90
94
  Installation
91
95
  ------------
@@ -94,21 +98,23 @@ You can install this package on top of an existing Airflow 2 installation (see `
94
98
  for the minimum Airflow version supported) via
95
99
  ``pip install apache-airflow-providers-apache-hive``
96
100
 
97
- The package supports the following python versions: 3.10,3.11,3.12
101
+ The package supports the following python versions: 3.10,3.11,3.12,3.13
98
102
 
99
103
  Requirements
100
104
  ------------
101
105
 
102
- ======================================= ==================
106
+ ======================================= =====================================
103
107
  PIP package Version required
104
- ======================================= ==================
108
+ ======================================= =====================================
105
109
  ``apache-airflow`` ``>=2.10.0``
106
110
  ``apache-airflow-providers-common-sql`` ``>=1.26.0``
107
111
  ``hmsclient`` ``>=0.1.0``
112
+ ``pandas`` ``>=2.1.2; python_version < "3.13"``
113
+ ``pandas`` ``>=2.2.3; python_version >= "3.13"``
108
114
  ``pyhive[hive_pure_sasl]`` ``>=0.7.0``
109
115
  ``thrift`` ``>=0.11.0``
110
116
  ``jmespath`` ``>=0.7.0``
111
- ======================================= ==================
117
+ ======================================= =====================================
112
118
 
113
119
  Cross provider package dependencies
114
120
  -----------------------------------
@@ -127,7 +133,6 @@ You can install such cross-provider dependencies when installing from PyPI. For
127
133
  Dependent package Extra
128
134
  ====================================================================================================================== ===================
129
135
  `apache-airflow-providers-amazon <https://airflow.apache.org/docs/apache-airflow-providers-amazon>`_ ``amazon``
130
- `apache-airflow-providers-common-compat <https://airflow.apache.org/docs/apache-airflow-providers-common-compat>`_ ``common.compat``
131
136
  `apache-airflow-providers-common-sql <https://airflow.apache.org/docs/apache-airflow-providers-common-sql>`_ ``common.sql``
132
137
  `apache-airflow-providers-microsoft-mssql <https://airflow.apache.org/docs/apache-airflow-providers-microsoft-mssql>`_ ``microsoft.mssql``
133
138
  `apache-airflow-providers-mysql <https://airflow.apache.org/docs/apache-airflow-providers-mysql>`_ ``mysql``
@@ -137,5 +142,5 @@ Dependent package
137
142
  ====================================================================================================================== ===================
138
143
 
139
144
  The changelog for the provider package can be found in the
140
- `changelog <https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.1.1/changelog.html>`_.
145
+ `changelog <https://airflow.apache.org/docs/apache-airflow-providers-apache-hive/9.1.2/changelog.html>`_.
141
146
 
@@ -1,9 +1,9 @@
1
1
  airflow/providers/apache/hive/LICENSE,sha256=gXPVwptPlW1TJ4HSuG5OMPg-a3h43OGMkZRR1rpwfJA,10850
2
- airflow/providers/apache/hive/__init__.py,sha256=8F3zH4JTiVVmllb0y0zN0f2fEIrsSq7aNYavyXYRc0E,1500
2
+ airflow/providers/apache/hive/__init__.py,sha256=rC0UU5QD0dYBDuTAMLT6YibWNH9hhGnEvAhMIzo7hJc,1500
3
3
  airflow/providers/apache/hive/get_provider_info.py,sha256=PdxdiZ7fdK1D-BTyZqj1oMS_1GS8_kbz2hZVgWMTkFI,5569
4
- airflow/providers/apache/hive/version_compat.py,sha256=vpHPRbg97lVT6nQO6dsHw_qeLPUT07UG4wAjWQ1thu8,2188
4
+ airflow/providers/apache/hive/version_compat.py,sha256=Dngg2mVH3etocX1hao4pOhrrrvwRGuDxZAgptlfeIxQ,2453
5
5
  airflow/providers/apache/hive/hooks/__init__.py,sha256=mlJxuZLkd5x-iq2SBwD3mvRQpt3YR7wjz_nceyF1IaI,787
6
- airflow/providers/apache/hive/hooks/hive.py,sha256=MCxceSCyOihazaeeZLm0fmFr4tmkBY4SpigE1-GQe0c,45064
6
+ airflow/providers/apache/hive/hooks/hive.py,sha256=j6QofvdhMeuCYhegJw8SGDMGxJ3sDrofWVADS385ujA,44966
7
7
  airflow/providers/apache/hive/macros/__init__.py,sha256=mlJxuZLkd5x-iq2SBwD3mvRQpt3YR7wjz_nceyF1IaI,787
8
8
  airflow/providers/apache/hive/macros/hive.py,sha256=FEMCR9rEWKFOKtKAvhVWhD5jRJnSYeHepVGgJLzUa2k,4548
9
9
  airflow/providers/apache/hive/operators/__init__.py,sha256=mlJxuZLkd5x-iq2SBwD3mvRQpt3YR7wjz_nceyF1IaI,787
@@ -19,10 +19,10 @@ airflow/providers/apache/hive/transfers/__init__.py,sha256=9hdXHABrVpkbpjZgUft39
19
19
  airflow/providers/apache/hive/transfers/hive_to_mysql.py,sha256=OypRFwRMYWvxdsI1-BbPLeuA7bPbW9ADsv6ppGGw9YQ,5296
20
20
  airflow/providers/apache/hive/transfers/hive_to_samba.py,sha256=tgBzCSKYp27WfGr0P-ttkAZ4mNl_zcSkwpYAIUmKPUM,2998
21
21
  airflow/providers/apache/hive/transfers/mssql_to_hive.py,sha256=Vwy8lfpN7uVOQ2IMAuZWgnS18K-TKZJDcaRs8gWnEco,5786
22
- airflow/providers/apache/hive/transfers/mysql_to_hive.py,sha256=2V8mD38injLk9FYpSRqI9KfkQ62EFGGS9B6hLidlD74,7052
22
+ airflow/providers/apache/hive/transfers/mysql_to_hive.py,sha256=y_UVb8TNVzdvbBKy6uBXZhdxR32Xh2rp6OO2x74PQiE,7062
23
23
  airflow/providers/apache/hive/transfers/s3_to_hive.py,sha256=qImzkrOD_XHKmlkcjMWZ-i08kOqncyKa42dnIyyoLkU,12447
24
24
  airflow/providers/apache/hive/transfers/vertica_to_hive.py,sha256=ogMltscmRKQ-EG1io0Z2cJdHlN_oKrFaXMP7P2ubAkw,5585
25
- apache_airflow_providers_apache_hive-9.1.1.dist-info/entry_points.txt,sha256=Hzixt33mYYldwmwswarArUB7ZU0xbmUtd3tFViZ414s,185
26
- apache_airflow_providers_apache_hive-9.1.1.dist-info/WHEEL,sha256=G2gURzTEtmeR8nrdXUJfNiB3VYVxigPQ-bEQujpNiNs,82
27
- apache_airflow_providers_apache_hive-9.1.1.dist-info/METADATA,sha256=n1rS9I1ekjwBhmBAoOOmCA7eQIZENotISeXBGIyea7s,7051
28
- apache_airflow_providers_apache_hive-9.1.1.dist-info/RECORD,,
25
+ apache_airflow_providers_apache_hive-9.1.2.dist-info/entry_points.txt,sha256=Hzixt33mYYldwmwswarArUB7ZU0xbmUtd3tFViZ414s,185
26
+ apache_airflow_providers_apache_hive-9.1.2.dist-info/WHEEL,sha256=G2gURzTEtmeR8nrdXUJfNiB3VYVxigPQ-bEQujpNiNs,82
27
+ apache_airflow_providers_apache_hive-9.1.2.dist-info/METADATA,sha256=tsSzXXW9sS8nhYf5vibvajB4nuM8IySjNXf96Py5FnY,7326
28
+ apache_airflow_providers_apache_hive-9.1.2.dist-info/RECORD,,