apache-airflow-providers-snowflake 6.0.0rc1__py3-none-any.whl → 6.1.0__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.
@@ -199,55 +199,3 @@ distributed under the License is distributed on an "AS IS" BASIS,
199
199
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
200
200
  See the License for the specific language governing permissions and
201
201
  limitations under the License.
202
-
203
- ============================================================================
204
- APACHE AIRFLOW SUBCOMPONENTS:
205
-
206
- The Apache Airflow project contains subcomponents with separate copyright
207
- notices and license terms. Your use of the source code for the these
208
- subcomponents is subject to the terms and conditions of the following
209
- licenses.
210
-
211
-
212
- ========================================================================
213
- Third party Apache 2.0 licenses
214
- ========================================================================
215
-
216
- The following components are provided under the Apache 2.0 License.
217
- See project link for details. The text of each license is also included
218
- at 3rd-party-licenses/LICENSE-[project].txt.
219
-
220
- (ALv2 License) hue v4.3.0 (https://github.com/cloudera/hue/)
221
- (ALv2 License) jqclock v2.3.0 (https://github.com/JohnRDOrazio/jQuery-Clock-Plugin)
222
- (ALv2 License) bootstrap3-typeahead v4.0.2 (https://github.com/bassjobsen/Bootstrap-3-Typeahead)
223
- (ALv2 License) connexion v2.7.0 (https://github.com/zalando/connexion)
224
-
225
- ========================================================================
226
- MIT licenses
227
- ========================================================================
228
-
229
- The following components are provided under the MIT License. See project link for details.
230
- The text of each license is also included at 3rd-party-licenses/LICENSE-[project].txt.
231
-
232
- (MIT License) jquery v3.5.1 (https://jquery.org/license/)
233
- (MIT License) dagre-d3 v0.6.4 (https://github.com/cpettitt/dagre-d3)
234
- (MIT License) bootstrap v3.4.1 (https://github.com/twbs/bootstrap/)
235
- (MIT License) d3-tip v0.9.1 (https://github.com/Caged/d3-tip)
236
- (MIT License) dataTables v1.10.25 (https://datatables.net)
237
- (MIT License) normalize.css v3.0.2 (http://necolas.github.io/normalize.css/)
238
- (MIT License) ElasticMock v1.3.2 (https://github.com/vrcmarcos/elasticmock)
239
- (MIT License) MomentJS v2.24.0 (http://momentjs.com/)
240
- (MIT License) eonasdan-bootstrap-datetimepicker v4.17.49 (https://github.com/eonasdan/bootstrap-datetimepicker/)
241
-
242
- ========================================================================
243
- BSD 3-Clause licenses
244
- ========================================================================
245
- The following components are provided under the BSD 3-Clause license. See project links for details.
246
- The text of each license is also included at 3rd-party-licenses/LICENSE-[project].txt.
247
-
248
- (BSD 3 License) d3 v5.16.0 (https://d3js.org)
249
- (BSD 3 License) d3-shape v2.1.0 (https://github.com/d3/d3-shape)
250
- (BSD 3 License) cgroupspy 0.2.1 (https://github.com/cloudsigma/cgroupspy)
251
-
252
- ========================================================================
253
- See 3rd-party-licenses/LICENSES-ui.txt for packages used in `/airflow/www`
@@ -29,7 +29,7 @@ from airflow import __version__ as airflow_version
29
29
 
30
30
  __all__ = ["__version__"]
31
31
 
32
- __version__ = "6.0.0"
32
+ __version__ = "6.1.0"
33
33
 
34
34
  if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
35
35
  "2.9.0"
@@ -15,8 +15,7 @@
15
15
  # specific language governing permissions and limitations
16
16
  # under the License.
17
17
 
18
- # NOTE! THIS FILE IS AUTOMATICALLY GENERATED AND WILL BE
19
- # OVERWRITTEN WHEN PREPARING PACKAGES.
18
+ # NOTE! THIS FILE IS AUTOMATICALLY GENERATED AND WILL BE OVERWRITTEN!
20
19
  #
21
20
  # IF YOU WANT TO MODIFY THIS FILE, YOU SHOULD MODIFY THE TEMPLATE
22
21
  # `get_provider_info_TEMPLATE.py.jinja2` IN the `dev/breeze/src/airflow_breeze/templates` DIRECTORY
@@ -28,8 +27,9 @@ def get_provider_info():
28
27
  "name": "Snowflake",
29
28
  "description": "`Snowflake <https://www.snowflake.com/>`__\n",
30
29
  "state": "ready",
31
- "source-date-epoch": 1734536683,
30
+ "source-date-epoch": 1739964397,
32
31
  "versions": [
32
+ "6.1.0",
33
33
  "6.0.0",
34
34
  "5.8.1",
35
35
  "5.8.0",
@@ -85,17 +85,6 @@ def get_provider_info():
85
85
  "1.1.0",
86
86
  "1.0.0",
87
87
  ],
88
- "dependencies": [
89
- "apache-airflow>=2.9.0",
90
- "apache-airflow-providers-common-compat>=1.1.0",
91
- "apache-airflow-providers-common-sql>=1.20.0",
92
- 'pandas>=2.1.2,<2.2;python_version>="3.9"',
93
- 'pandas>=1.5.3,<2.2;python_version<"3.9"',
94
- "pyarrow>=14.0.1",
95
- "snowflake-connector-python>=3.7.1",
96
- "snowflake-sqlalchemy>=1.4.0",
97
- 'snowflake-snowpark-python>=1.17.0;python_version<"3.12"',
98
- ],
99
88
  "integrations": [
100
89
  {
101
90
  "integration-name": "Snowflake",
@@ -104,7 +93,7 @@ def get_provider_info():
104
93
  "/docs/apache-airflow-providers-snowflake/operators/snowflake.rst",
105
94
  "/docs/apache-airflow-providers-snowflake/operators/snowpark.rst",
106
95
  ],
107
- "logo": "/integration-logos/snowflake/Snowflake.png",
96
+ "logo": "/docs/integration-logos/Snowflake.png",
108
97
  "tags": ["service"],
109
98
  }
110
99
  ],
@@ -162,4 +151,15 @@ def get_provider_info():
162
151
  "python-modules": ["airflow.providers.snowflake.triggers.snowflake_trigger"],
163
152
  }
164
153
  ],
154
+ "dependencies": [
155
+ "apache-airflow>=2.9.0",
156
+ "apache-airflow-providers-common-compat>=1.1.0",
157
+ "apache-airflow-providers-common-sql>=1.20.0",
158
+ "pandas>=2.1.2,<2.2",
159
+ "pyarrow>=14.0.1",
160
+ "snowflake-connector-python>=3.7.1",
161
+ "snowflake-sqlalchemy>=1.4.0",
162
+ "snowflake-snowpark-python>=1.17.0;python_version<'3.12'",
163
+ ],
164
+ "optional-dependencies": {"openlineage": ["apache-airflow-providers-openlineage"]},
165
165
  }
@@ -28,15 +28,15 @@ from urllib.parse import urlparse
28
28
 
29
29
  from cryptography.hazmat.backends import default_backend
30
30
  from cryptography.hazmat.primitives import serialization
31
- from snowflake import connector
32
- from snowflake.connector import DictCursor, SnowflakeConnection, util_text
33
- from snowflake.sqlalchemy import URL
34
31
  from sqlalchemy import create_engine
35
32
 
36
33
  from airflow.exceptions import AirflowException
37
34
  from airflow.providers.common.sql.hooks.sql import DbApiHook, return_single_query_results
38
35
  from airflow.providers.snowflake.utils.openlineage import fix_snowflake_sqlalchemy_uri
39
36
  from airflow.utils.strings import to_boolean
37
+ from snowflake import connector
38
+ from snowflake.connector import DictCursor, SnowflakeConnection, util_text
39
+ from snowflake.sqlalchemy import URL
40
40
 
41
41
  T = TypeVar("T")
42
42
  if TYPE_CHECKING:
@@ -299,6 +299,12 @@ class SnowflakeHook(DbApiHook):
299
299
  if snowflake_port:
300
300
  conn_config["port"] = snowflake_port
301
301
 
302
+ # if a value for ocsp_fail_open is set, pass it along.
303
+ # Note the check is for `is not None` so that we can pass along `False` as a value.
304
+ ocsp_fail_open = extra_dict.get("ocsp_fail_open")
305
+ if ocsp_fail_open is not None:
306
+ conn_config["ocsp_fail_open"] = _try_to_boolean(ocsp_fail_open)
307
+
302
308
  return conn_config
303
309
 
304
310
  def get_uri(self) -> str:
@@ -320,6 +326,7 @@ class SnowflakeHook(DbApiHook):
320
326
  "client_request_mfa_token",
321
327
  "client_store_temporary_credential",
322
328
  "json_result_force_utf8_decoding",
329
+ "ocsp_fail_open",
323
330
  ]
324
331
  }
325
332
  )
@@ -345,6 +352,9 @@ class SnowflakeHook(DbApiHook):
345
352
  if "json_result_force_utf8_decoding" in conn_params:
346
353
  engine_kwargs.setdefault("connect_args", {})
347
354
  engine_kwargs["connect_args"]["json_result_force_utf8_decoding"] = True
355
+ if "ocsp_fail_open" in conn_params:
356
+ engine_kwargs.setdefault("connect_args", {})
357
+ engine_kwargs["connect_args"]["ocsp_fail_open"] = conn_params["ocsp_fail_open"]
348
358
  for key in ["session_parameters", "private_key"]:
349
359
  if conn_params.get(key):
350
360
  engine_kwargs.setdefault("connect_args", {})
@@ -357,10 +367,9 @@ class SnowflakeHook(DbApiHook):
357
367
 
358
368
  :return: the created session.
359
369
  """
360
- from snowflake.snowpark import Session
361
-
362
370
  from airflow import __version__ as airflow_version
363
371
  from airflow.providers.snowflake import __version__ as provider_version
372
+ from snowflake.snowpark import Session
364
373
 
365
374
  conn_config = self._get_conn_params
366
375
  session = Session.builder.configs(conn_config).create()
@@ -471,7 +480,7 @@ class SnowflakeHook(DbApiHook):
471
480
  _last_description = cur.description
472
481
  else:
473
482
  results.append(result)
474
- self.descriptions.append(cur.description)
483
+ self.descriptions.append(cur.description) # type: ignore[has-type]
475
484
 
476
485
  query_id = cur.sfqid
477
486
  self.log.info("Rows affected: %s", cur.rowcount)
@@ -34,12 +34,16 @@ from airflow.providers.snowflake.hooks.snowflake_sql_api import SnowflakeSqlApiH
34
34
  from airflow.providers.snowflake.triggers.snowflake_trigger import SnowflakeSqlApiTrigger
35
35
 
36
36
  if TYPE_CHECKING:
37
- from airflow.utils.context import Context
37
+ try:
38
+ from airflow.sdk.definitions.context import Context
39
+ except ImportError:
40
+ # TODO: Remove once provider drops support for Airflow 2
41
+ from airflow.utils.context import Context
38
42
 
39
43
 
40
44
  class SnowflakeCheckOperator(SQLCheckOperator):
41
45
  """
42
- Performs a check against Snowflake.
46
+ Perform a check against Snowflake.
43
47
 
44
48
  The ``SnowflakeCheckOperator`` expects a sql query that will return a single row. Each
45
49
  value on that first row is evaluated using python ``bool`` casting. If any of the values
@@ -290,8 +294,9 @@ class SnowflakeIntervalCheckOperator(SQLIntervalCheckOperator):
290
294
 
291
295
  class SnowflakeSqlApiOperator(SQLExecuteQueryOperator):
292
296
  """
293
- Implemented Snowflake SQL API Operator to support multiple SQL statements sequentially,
294
- which is the behavior of the SQLExecuteQueryOperator, the Snowflake SQL API allows submitting
297
+ Implemented Snowflake SQL API Operator to support multiple SQL statements sequentially.
298
+
299
+ This is the behavior of the SQLExecuteQueryOperator, the Snowflake SQL API allows submitting
295
300
  multiple SQL statements in a single request. It make post request to submit SQL
296
301
  statements for execution, poll to check the status of the execution of a statement. Fetch query results
297
302
  concurrently.
@@ -349,11 +354,16 @@ class SnowflakeSqlApiOperator(SQLExecuteQueryOperator):
349
354
  When executing the statement, Snowflake replaces placeholders (? and :name) in
350
355
  the statement with these specified values.
351
356
  :param deferrable: Run operator in the deferrable mode.
352
- """ # noqa: D205, D400
357
+ """
353
358
 
354
359
  LIFETIME = timedelta(minutes=59) # The tokens will have a 59 minutes lifetime
355
360
  RENEWAL_DELTA = timedelta(minutes=54) # Tokens will be renewed after 54 minutes
356
361
 
362
+ template_fields: Sequence[str] = tuple(
363
+ set(SQLExecuteQueryOperator.template_fields) | {"snowflake_conn_id"}
364
+ )
365
+ conn_id_field = "snowflake_conn_id"
366
+
357
367
  def __init__(
358
368
  self,
359
369
  *,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: apache-airflow-providers-snowflake
3
- Version: 6.0.0rc1
3
+ Version: 6.1.0
4
4
  Summary: Provider package apache-airflow-providers-snowflake for Apache Airflow
5
5
  Keywords: airflow-provider,snowflake,airflow,integration
6
6
  Author-email: Apache Software Foundation <dev@airflow.apache.org>
@@ -20,19 +20,18 @@ Classifier: Programming Language :: Python :: 3.10
20
20
  Classifier: Programming Language :: Python :: 3.11
21
21
  Classifier: Programming Language :: Python :: 3.12
22
22
  Classifier: Topic :: System :: Monitoring
23
- Requires-Dist: apache-airflow-providers-common-compat>=1.1.0rc0
24
- Requires-Dist: apache-airflow-providers-common-sql>=1.20.0rc0
25
- Requires-Dist: apache-airflow>=2.9.0rc0
26
- Requires-Dist: pandas>=1.5.3,<2.2;python_version<"3.9"
27
- Requires-Dist: pandas>=2.1.2,<2.2;python_version>="3.9"
23
+ Requires-Dist: apache-airflow>=2.9.0
24
+ Requires-Dist: apache-airflow-providers-common-compat>=1.1.0
25
+ Requires-Dist: apache-airflow-providers-common-sql>=1.20.0
26
+ Requires-Dist: pandas>=2.1.2,<2.2
28
27
  Requires-Dist: pyarrow>=14.0.1
29
28
  Requires-Dist: snowflake-connector-python>=3.7.1
30
- Requires-Dist: snowflake-snowpark-python>=1.17.0;python_version<"3.12"
31
29
  Requires-Dist: snowflake-sqlalchemy>=1.4.0
30
+ Requires-Dist: snowflake-snowpark-python>=1.17.0;python_version<'3.12'
32
31
  Requires-Dist: apache-airflow-providers-openlineage ; extra == "openlineage"
33
32
  Project-URL: Bug Tracker, https://github.com/apache/airflow/issues
34
- Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-snowflake/6.0.0/changelog.html
35
- Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-snowflake/6.0.0
33
+ Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-snowflake/6.1.0/changelog.html
34
+ Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-snowflake/6.1.0
36
35
  Project-URL: Slack Chat, https://s.apache.org/airflow-slack
37
36
  Project-URL: Source Code, https://github.com/apache/airflow
38
37
  Project-URL: Twitter, https://x.com/ApacheAirflow
@@ -40,23 +39,6 @@ Project-URL: YouTube, https://www.youtube.com/channel/UCSXwxpWZQ7XZ1WL3wqevChA/
40
39
  Provides-Extra: openlineage
41
40
 
42
41
 
43
- .. Licensed to the Apache Software Foundation (ASF) under one
44
- or more contributor license agreements. See the NOTICE file
45
- distributed with this work for additional information
46
- regarding copyright ownership. The ASF licenses this file
47
- to you under the Apache License, Version 2.0 (the
48
- "License"); you may not use this file except in compliance
49
- with the License. You may obtain a copy of the License at
50
-
51
- .. http://www.apache.org/licenses/LICENSE-2.0
52
-
53
- .. Unless required by applicable law or agreed to in writing,
54
- software distributed under the License is distributed on an
55
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
56
- KIND, either express or implied. See the License for the
57
- specific language governing permissions and limitations
58
- under the License.
59
-
60
42
  .. Licensed to the Apache Software Foundation (ASF) under one
61
43
  or more contributor license agreements. See the NOTICE file
62
44
  distributed with this work for additional information
@@ -74,8 +56,7 @@ Provides-Extra: openlineage
74
56
  specific language governing permissions and limitations
75
57
  under the License.
76
58
 
77
- .. NOTE! THIS FILE IS AUTOMATICALLY GENERATED AND WILL BE
78
- OVERWRITTEN WHEN PREPARING PACKAGES.
59
+ .. NOTE! THIS FILE IS AUTOMATICALLY GENERATED AND WILL BE OVERWRITTEN!
79
60
 
80
61
  .. IF YOU WANT TO MODIFY TEMPLATE FOR THIS FILE, YOU SHOULD MODIFY THE TEMPLATE
81
62
  `PROVIDER_README_TEMPLATE.rst.jinja2` IN the `dev/breeze/src/airflow_breeze/templates` DIRECTORY
@@ -83,7 +64,7 @@ Provides-Extra: openlineage
83
64
 
84
65
  Package ``apache-airflow-providers-snowflake``
85
66
 
86
- Release: ``6.0.0.rc1``
67
+ Release: ``6.1.0``
87
68
 
88
69
 
89
70
  `Snowflake <https://www.snowflake.com/>`__
@@ -96,7 +77,7 @@ This is a provider package for ``snowflake`` provider. All classes for this prov
96
77
  are in ``airflow.providers.snowflake`` python package.
97
78
 
98
79
  You can find package information and changelog for the provider
99
- in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-snowflake/6.0.0/>`_.
80
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-snowflake/6.1.0/>`_.
100
81
 
101
82
  Installation
102
83
  ------------
@@ -110,19 +91,18 @@ The package supports the following python versions: 3.9,3.10,3.11,3.12
110
91
  Requirements
111
92
  ------------
112
93
 
113
- ========================================== =========================================
94
+ ========================================== =====================================
114
95
  PIP package Version required
115
- ========================================== =========================================
96
+ ========================================== =====================================
116
97
  ``apache-airflow`` ``>=2.9.0``
117
98
  ``apache-airflow-providers-common-compat`` ``>=1.1.0``
118
99
  ``apache-airflow-providers-common-sql`` ``>=1.20.0``
119
- ``pandas`` ``>=2.1.2,<2.2; python_version >= "3.9"``
120
- ``pandas`` ``>=1.5.3,<2.2; python_version < "3.9"``
100
+ ``pandas`` ``>=2.1.2,<2.2``
121
101
  ``pyarrow`` ``>=14.0.1``
122
102
  ``snowflake-connector-python`` ``>=3.7.1``
123
103
  ``snowflake-sqlalchemy`` ``>=1.4.0``
124
104
  ``snowflake-snowpark-python`` ``>=1.17.0; python_version < "3.12"``
125
- ========================================== =========================================
105
+ ========================================== =====================================
126
106
 
127
107
  Cross provider package dependencies
128
108
  -----------------------------------
@@ -146,4 +126,5 @@ Dependent package
146
126
  ================================================================================================================== =================
147
127
 
148
128
  The changelog for the provider package can be found in the
149
- `changelog <https://airflow.apache.org/docs/apache-airflow-providers-snowflake/6.0.0/changelog.html>`_.
129
+ `changelog <https://airflow.apache.org/docs/apache-airflow-providers-snowflake/6.1.0/changelog.html>`_.
130
+
@@ -1,13 +1,13 @@
1
- airflow/providers/snowflake/LICENSE,sha256=FFb4jd2AXnOOf7XLP04pQW6jbdhG49TxlGY6fFpCV1Y,13609
2
- airflow/providers/snowflake/__init__.py,sha256=WEuKiHaqXFuM8JgAQ7TgdccOaWx7pgkydr-uTDk4smc,1496
3
- airflow/providers/snowflake/get_provider_info.py,sha256=QINXnS9tpxr-hoAaRqVW2Gui6gZMjwvqUztsciJPMQQ,5639
1
+ airflow/providers/snowflake/LICENSE,sha256=gXPVwptPlW1TJ4HSuG5OMPg-a3h43OGMkZRR1rpwfJA,10850
2
+ airflow/providers/snowflake/__init__.py,sha256=wbduNpHC6V1I9K4YVLh4ZhvnqMDn2Jl-HIR0Cf1eNOE,1496
3
+ airflow/providers/snowflake/get_provider_info.py,sha256=x9uRV99oSHoTBm21ikl2MqVkthQs3bjiqwIJZZDsQT8,5644
4
4
  airflow/providers/snowflake/decorators/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
5
5
  airflow/providers/snowflake/decorators/snowpark.py,sha256=IXAzhcf7lkim9wsb_7SZlk5JPMQ38KOsEtymQUr0Q68,5298
6
6
  airflow/providers/snowflake/hooks/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
7
- airflow/providers/snowflake/hooks/snowflake.py,sha256=sUbQW6PGEZ5XumzqBXJQ9x33wjyIUnfd47StLi3KSpo,23576
7
+ airflow/providers/snowflake/hooks/snowflake.py,sha256=cIJMMG76SUh0XrPw8uub-zqqrEG9oQt9_GSk4s4Jucc,24161
8
8
  airflow/providers/snowflake/hooks/snowflake_sql_api.py,sha256=3W3wGAWRUxu1K62qqw682vBrXrRzyEmoCYID7PlMfaA,15486
9
9
  airflow/providers/snowflake/operators/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
10
- airflow/providers/snowflake/operators/snowflake.py,sha256=N2-P3DEpMsbSB-qH1jBDMohjIlKXJ6JsSJQeF4UHH2U,21983
10
+ airflow/providers/snowflake/operators/snowflake.py,sha256=OgaX1Y-26LYG9MLv7vImcQTXR1tD-PtQVI_Ahdc3hCk,22292
11
11
  airflow/providers/snowflake/operators/snowpark.py,sha256=Wt3wzcsja0ed4q2KE9WyL74XH6mUVSPNZvcCHWEHQtc,5815
12
12
  airflow/providers/snowflake/transfers/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
13
13
  airflow/providers/snowflake/transfers/copy_into_snowflake.py,sha256=splXX_zn35NecxhWqbs0rAO6zJL0jzeIEdJCqBw5IOI,12511
@@ -18,7 +18,7 @@ airflow/providers/snowflake/utils/common.py,sha256=DG-KLy2KpZWAqZqm_XIECm8lmdoUl
18
18
  airflow/providers/snowflake/utils/openlineage.py,sha256=XkcYvb_cXG8tZQ6h1IwhfGCkOVf7MSBfOxW0WLGBW0s,3257
19
19
  airflow/providers/snowflake/utils/snowpark.py,sha256=lw_tleNGFJICtTw2qCJ3TjWFOwZK1t8ZCIfYumS2Q18,1616
20
20
  airflow/providers/snowflake/utils/sql_api_generate_jwt.py,sha256=9mR-vHIquv60tfAni87f6FAjKsiRHUDDrsVhzw4M9vM,6762
21
- apache_airflow_providers_snowflake-6.0.0rc1.dist-info/entry_points.txt,sha256=bCrl5J1PXUMzbgnrKYho61rkbL2gHRT4I6f_1jlxAX4,105
22
- apache_airflow_providers_snowflake-6.0.0rc1.dist-info/WHEEL,sha256=CpUCUxeHQbRN5UGRQHYRJorO5Af-Qy_fHMctcQ8DSGI,82
23
- apache_airflow_providers_snowflake-6.0.0rc1.dist-info/METADATA,sha256=Pvg-8GSozPtKmpap2nDX4moPE_glyQZM7HhDewubyGY,7262
24
- apache_airflow_providers_snowflake-6.0.0rc1.dist-info/RECORD,,
21
+ apache_airflow_providers_snowflake-6.1.0.dist-info/entry_points.txt,sha256=bCrl5J1PXUMzbgnrKYho61rkbL2gHRT4I6f_1jlxAX4,105
22
+ apache_airflow_providers_snowflake-6.1.0.dist-info/WHEEL,sha256=CpUCUxeHQbRN5UGRQHYRJorO5Af-Qy_fHMctcQ8DSGI,82
23
+ apache_airflow_providers_snowflake-6.1.0.dist-info/METADATA,sha256=5whcYkTWZjVZpDmsdFgM1tksqylxyncCThrKXMHdlrc,6222
24
+ apache_airflow_providers_snowflake-6.1.0.dist-info/RECORD,,