apache-airflow-providers-exasol 4.5.2__py3-none-any.whl → 4.5.3__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.
Potentially problematic release.
This version of apache-airflow-providers-exasol might be problematic. Click here for more details.
- airflow/providers/exasol/__init__.py +1 -1
- airflow/providers/exasol/get_provider_info.py +3 -2
- airflow/providers/exasol/hooks/exasol.py +20 -11
- {apache_airflow_providers_exasol-4.5.2.dist-info → apache_airflow_providers_exasol-4.5.3.dist-info}/METADATA +8 -8
- apache_airflow_providers_exasol-4.5.3.dist-info/RECORD +11 -0
- apache_airflow_providers_exasol-4.5.2.dist-info/RECORD +0 -11
- {apache_airflow_providers_exasol-4.5.2.dist-info → apache_airflow_providers_exasol-4.5.3.dist-info}/WHEEL +0 -0
- {apache_airflow_providers_exasol-4.5.2.dist-info → apache_airflow_providers_exasol-4.5.3.dist-info}/entry_points.txt +0 -0
|
@@ -29,7 +29,7 @@ from airflow import __version__ as airflow_version
|
|
|
29
29
|
|
|
30
30
|
__all__ = ["__version__"]
|
|
31
31
|
|
|
32
|
-
__version__ = "4.5.
|
|
32
|
+
__version__ = "4.5.3"
|
|
33
33
|
|
|
34
34
|
if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
|
|
35
35
|
"2.7.0"
|
|
@@ -28,8 +28,9 @@ def get_provider_info():
|
|
|
28
28
|
"name": "Exasol",
|
|
29
29
|
"description": "`Exasol <https://www.exasol.com/>`__\n",
|
|
30
30
|
"state": "ready",
|
|
31
|
-
"source-date-epoch":
|
|
31
|
+
"source-date-epoch": 1722663904,
|
|
32
32
|
"versions": [
|
|
33
|
+
"4.5.3",
|
|
33
34
|
"4.5.2",
|
|
34
35
|
"4.5.1",
|
|
35
36
|
"4.5.0",
|
|
@@ -64,7 +65,7 @@ def get_provider_info():
|
|
|
64
65
|
],
|
|
65
66
|
"dependencies": [
|
|
66
67
|
"apache-airflow>=2.7.0",
|
|
67
|
-
"apache-airflow-providers-common-sql>=1.
|
|
68
|
+
"apache-airflow-providers-common-sql>=1.14.1",
|
|
68
69
|
"pyexasol>=0.5.1",
|
|
69
70
|
'pandas>=2.1.2,<2.2;python_version>="3.9"',
|
|
70
71
|
'pandas>=1.5.3,<2.2;python_version<"3.9"',
|
|
@@ -32,7 +32,8 @@ T = TypeVar("T")
|
|
|
32
32
|
|
|
33
33
|
|
|
34
34
|
class ExasolHook(DbApiHook):
|
|
35
|
-
"""
|
|
35
|
+
"""
|
|
36
|
+
Interact with Exasol.
|
|
36
37
|
|
|
37
38
|
You can specify the pyexasol ``compression``, ``encryption``, ``json_lib``
|
|
38
39
|
and ``client_name`` parameters in the extra field of your connection
|
|
@@ -54,7 +55,7 @@ class ExasolHook(DbApiHook):
|
|
|
54
55
|
self.schema = kwargs.pop("schema", None)
|
|
55
56
|
|
|
56
57
|
def get_conn(self) -> ExaConnection:
|
|
57
|
-
conn_id =
|
|
58
|
+
conn_id = self.get_conn_id()
|
|
58
59
|
conn = self.get_connection(conn_id)
|
|
59
60
|
conn_args = {
|
|
60
61
|
"dsn": f"{conn.host}:{conn.port}",
|
|
@@ -73,7 +74,8 @@ class ExasolHook(DbApiHook):
|
|
|
73
74
|
def get_pandas_df(
|
|
74
75
|
self, sql, parameters: Iterable | Mapping[str, Any] | None = None, **kwargs
|
|
75
76
|
) -> pd.DataFrame:
|
|
76
|
-
"""
|
|
77
|
+
"""
|
|
78
|
+
Execute the SQL and return a Pandas dataframe.
|
|
77
79
|
|
|
78
80
|
:param sql: The sql statement to be executed (str) or a list of
|
|
79
81
|
sql statements to execute.
|
|
@@ -91,7 +93,8 @@ class ExasolHook(DbApiHook):
|
|
|
91
93
|
sql: str | list[str],
|
|
92
94
|
parameters: Iterable | Mapping[str, Any] | None = None,
|
|
93
95
|
) -> list[dict | tuple[Any, ...]]:
|
|
94
|
-
"""
|
|
96
|
+
"""
|
|
97
|
+
Execute the SQL and return a set of records.
|
|
95
98
|
|
|
96
99
|
:param sql: the sql statement to be executed (str) or a list of
|
|
97
100
|
sql statements to execute
|
|
@@ -101,7 +104,8 @@ class ExasolHook(DbApiHook):
|
|
|
101
104
|
return cur.fetchall()
|
|
102
105
|
|
|
103
106
|
def get_first(self, sql: str | list[str], parameters: Iterable | Mapping[str, Any] | None = None) -> Any:
|
|
104
|
-
"""
|
|
107
|
+
"""
|
|
108
|
+
Execute the SQL and return the first resulting row.
|
|
105
109
|
|
|
106
110
|
:param sql: the sql statement to be executed (str) or a list of
|
|
107
111
|
sql statements to execute
|
|
@@ -117,7 +121,8 @@ class ExasolHook(DbApiHook):
|
|
|
117
121
|
query_params: dict | None = None,
|
|
118
122
|
export_params: dict | None = None,
|
|
119
123
|
) -> None:
|
|
120
|
-
"""
|
|
124
|
+
"""
|
|
125
|
+
Export data to a file.
|
|
121
126
|
|
|
122
127
|
:param filename: Path to the file to which the data has to be exported
|
|
123
128
|
:param query_or_table: the sql statement to be executed or table name to export
|
|
@@ -193,7 +198,8 @@ class ExasolHook(DbApiHook):
|
|
|
193
198
|
split_statements: bool = False,
|
|
194
199
|
return_last: bool = True,
|
|
195
200
|
) -> tuple | list[tuple] | list[list[tuple] | tuple] | None:
|
|
196
|
-
"""
|
|
201
|
+
"""
|
|
202
|
+
Run a command or a list of commands.
|
|
197
203
|
|
|
198
204
|
Pass a list of SQL statements to the SQL parameter to get them to
|
|
199
205
|
execute sequentially.
|
|
@@ -254,7 +260,8 @@ class ExasolHook(DbApiHook):
|
|
|
254
260
|
return results
|
|
255
261
|
|
|
256
262
|
def set_autocommit(self, conn, autocommit: bool) -> None:
|
|
257
|
-
"""
|
|
263
|
+
"""
|
|
264
|
+
Set the autocommit flag on the connection.
|
|
258
265
|
|
|
259
266
|
:param conn: Connection to set autocommit setting to.
|
|
260
267
|
:param autocommit: The autocommit setting to set.
|
|
@@ -262,12 +269,13 @@ class ExasolHook(DbApiHook):
|
|
|
262
269
|
if not self.supports_autocommit and autocommit:
|
|
263
270
|
self.log.warning(
|
|
264
271
|
"%s connection doesn't support autocommit but autocommit activated.",
|
|
265
|
-
|
|
272
|
+
self.get_conn_id(),
|
|
266
273
|
)
|
|
267
274
|
conn.set_autocommit(autocommit)
|
|
268
275
|
|
|
269
276
|
def get_autocommit(self, conn) -> bool:
|
|
270
|
-
"""
|
|
277
|
+
"""
|
|
278
|
+
Get autocommit setting for the provided connection.
|
|
271
279
|
|
|
272
280
|
:param conn: Connection to get autocommit setting from.
|
|
273
281
|
:return: connection autocommit setting. True if ``autocommit`` is set
|
|
@@ -281,7 +289,8 @@ class ExasolHook(DbApiHook):
|
|
|
281
289
|
|
|
282
290
|
@staticmethod
|
|
283
291
|
def _serialize_cell(cell, conn=None) -> Any:
|
|
284
|
-
"""
|
|
292
|
+
"""
|
|
293
|
+
Override to disable cell serialization.
|
|
285
294
|
|
|
286
295
|
Exasol will adapt all arguments to the ``execute()`` method internally,
|
|
287
296
|
hence we return cell without any conversion.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: apache-airflow-providers-exasol
|
|
3
|
-
Version: 4.5.
|
|
3
|
+
Version: 4.5.3
|
|
4
4
|
Summary: Provider package apache-airflow-providers-exasol for Apache Airflow
|
|
5
5
|
Keywords: airflow-provider,exasol,airflow,integration
|
|
6
6
|
Author-email: Apache Software Foundation <dev@airflow.apache.org>
|
|
@@ -21,15 +21,15 @@ Classifier: Programming Language :: Python :: 3.10
|
|
|
21
21
|
Classifier: Programming Language :: Python :: 3.11
|
|
22
22
|
Classifier: Programming Language :: Python :: 3.12
|
|
23
23
|
Classifier: Topic :: System :: Monitoring
|
|
24
|
-
Requires-Dist: apache-airflow-providers-common-sql>=1.
|
|
24
|
+
Requires-Dist: apache-airflow-providers-common-sql>=1.14.1
|
|
25
25
|
Requires-Dist: apache-airflow>=2.7.0
|
|
26
26
|
Requires-Dist: pandas>=1.5.3,<2.2;python_version<"3.9"
|
|
27
27
|
Requires-Dist: pandas>=2.1.2,<2.2;python_version>="3.9"
|
|
28
28
|
Requires-Dist: pyexasol>=0.5.1
|
|
29
29
|
Requires-Dist: apache-airflow-providers-common-sql ; extra == "common.sql"
|
|
30
30
|
Project-URL: Bug Tracker, https://github.com/apache/airflow/issues
|
|
31
|
-
Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-exasol/4.5.
|
|
32
|
-
Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-exasol/4.5.
|
|
31
|
+
Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-exasol/4.5.3/changelog.html
|
|
32
|
+
Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-exasol/4.5.3
|
|
33
33
|
Project-URL: Slack Chat, https://s.apache.org/airflow-slack
|
|
34
34
|
Project-URL: Source Code, https://github.com/apache/airflow
|
|
35
35
|
Project-URL: Twitter, https://twitter.com/ApacheAirflow
|
|
@@ -80,7 +80,7 @@ Provides-Extra: common.sql
|
|
|
80
80
|
|
|
81
81
|
Package ``apache-airflow-providers-exasol``
|
|
82
82
|
|
|
83
|
-
Release: ``4.5.
|
|
83
|
+
Release: ``4.5.3``
|
|
84
84
|
|
|
85
85
|
|
|
86
86
|
`Exasol <https://www.exasol.com/>`__
|
|
@@ -93,7 +93,7 @@ This is a provider package for ``exasol`` provider. All classes for this provide
|
|
|
93
93
|
are in ``airflow.providers.exasol`` 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-exasol/4.5.
|
|
96
|
+
in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-exasol/4.5.3/>`_.
|
|
97
97
|
|
|
98
98
|
Installation
|
|
99
99
|
------------
|
|
@@ -111,7 +111,7 @@ Requirements
|
|
|
111
111
|
PIP package Version required
|
|
112
112
|
======================================= =========================================
|
|
113
113
|
``apache-airflow`` ``>=2.7.0``
|
|
114
|
-
``apache-airflow-providers-common-sql`` ``>=1.
|
|
114
|
+
``apache-airflow-providers-common-sql`` ``>=1.14.1``
|
|
115
115
|
``pyexasol`` ``>=0.5.1``
|
|
116
116
|
``pandas`` ``>=2.1.2,<2.2; python_version >= "3.9"``
|
|
117
117
|
``pandas`` ``>=1.5.3,<2.2; python_version < "3.9"``
|
|
@@ -137,4 +137,4 @@ Dependent package
|
|
|
137
137
|
============================================================================================================ ==============
|
|
138
138
|
|
|
139
139
|
The changelog for the provider package can be found in the
|
|
140
|
-
`changelog <https://airflow.apache.org/docs/apache-airflow-providers-exasol/4.5.
|
|
140
|
+
`changelog <https://airflow.apache.org/docs/apache-airflow-providers-exasol/4.5.3/changelog.html>`_.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
airflow/providers/exasol/LICENSE,sha256=FFb4jd2AXnOOf7XLP04pQW6jbdhG49TxlGY6fFpCV1Y,13609
|
|
2
|
+
airflow/providers/exasol/__init__.py,sha256=CuPC_s6Lh3dTrwZOFxLMBQrTPC44qv8cqcNdQigaqh0,1493
|
|
3
|
+
airflow/providers/exasol/get_provider_info.py,sha256=8HntwOBYWIWYH_bSLYr5pb4IRCigUmIV25ycD9wIWqM,3055
|
|
4
|
+
airflow/providers/exasol/hooks/__init__.py,sha256=mlJxuZLkd5x-iq2SBwD3mvRQpt3YR7wjz_nceyF1IaI,787
|
|
5
|
+
airflow/providers/exasol/hooks/exasol.py,sha256=NF-dEwu79EQtqVnC2629BWm8z9ONQ-PUuOJzCFQFGp8,11930
|
|
6
|
+
airflow/providers/exasol/operators/__init__.py,sha256=mlJxuZLkd5x-iq2SBwD3mvRQpt3YR7wjz_nceyF1IaI,787
|
|
7
|
+
airflow/providers/exasol/operators/exasol.py,sha256=zXfWorHjY804i0vWTZP-01t0QLdE3rrn1WVLDxD2mro,2447
|
|
8
|
+
apache_airflow_providers_exasol-4.5.3.dist-info/entry_points.txt,sha256=8pvKoFs3wCXkl3x0a5dzqvTonx17I8zD8oodM_M386Q,102
|
|
9
|
+
apache_airflow_providers_exasol-4.5.3.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
|
|
10
|
+
apache_airflow_providers_exasol-4.5.3.dist-info/METADATA,sha256=el5B9mQAux9ypQcSORbvR-PQDBBugHYXzDmrxzV6AgQ,6451
|
|
11
|
+
apache_airflow_providers_exasol-4.5.3.dist-info/RECORD,,
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
airflow/providers/exasol/LICENSE,sha256=FFb4jd2AXnOOf7XLP04pQW6jbdhG49TxlGY6fFpCV1Y,13609
|
|
2
|
-
airflow/providers/exasol/__init__.py,sha256=K3OoDXbhA9IddbKTkwE7EqTI5vPL8xLWnuWwPHmTXCo,1493
|
|
3
|
-
airflow/providers/exasol/get_provider_info.py,sha256=H7waWGBh3ZsUdckSNEiZzqCxWsVHet6wcGhdBpfIrfI,3034
|
|
4
|
-
airflow/providers/exasol/hooks/__init__.py,sha256=mlJxuZLkd5x-iq2SBwD3mvRQpt3YR7wjz_nceyF1IaI,787
|
|
5
|
-
airflow/providers/exasol/hooks/exasol.py,sha256=pf06HbDbilo0Yll8r4367B0hxAmedHC0X4ZDa19EKaE,11885
|
|
6
|
-
airflow/providers/exasol/operators/__init__.py,sha256=mlJxuZLkd5x-iq2SBwD3mvRQpt3YR7wjz_nceyF1IaI,787
|
|
7
|
-
airflow/providers/exasol/operators/exasol.py,sha256=zXfWorHjY804i0vWTZP-01t0QLdE3rrn1WVLDxD2mro,2447
|
|
8
|
-
apache_airflow_providers_exasol-4.5.2.dist-info/entry_points.txt,sha256=8pvKoFs3wCXkl3x0a5dzqvTonx17I8zD8oodM_M386Q,102
|
|
9
|
-
apache_airflow_providers_exasol-4.5.2.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
|
|
10
|
-
apache_airflow_providers_exasol-4.5.2.dist-info/METADATA,sha256=sVjEFCDew0jerNN2k8VUi4VNQg_OJHvENdQJ8NBL3Ok,6451
|
|
11
|
-
apache_airflow_providers_exasol-4.5.2.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|