apache-airflow-providers-yandex 3.12.0rc1__py3-none-any.whl → 4.0.0rc1__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,11 +29,11 @@ from airflow import __version__ as airflow_version
29
29
 
30
30
  __all__ = ["__version__"]
31
31
 
32
- __version__ = "3.12.0"
32
+ __version__ = "4.0.0"
33
33
 
34
34
  if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
35
- "2.8.0"
35
+ "2.9.0"
36
36
  ):
37
37
  raise RuntimeError(
38
- f"The package `apache-airflow-providers-yandex:{__version__}` needs Apache Airflow 2.8.0+"
38
+ f"The package `apache-airflow-providers-yandex:{__version__}` needs Apache Airflow 2.9.0+"
39
39
  )
@@ -28,8 +28,9 @@ def get_provider_info():
28
28
  "name": "Yandex",
29
29
  "description": "This package is for Yandex, including:\n\n - `Yandex.Cloud <https://cloud.yandex.com/>`__\n",
30
30
  "state": "ready",
31
- "source-date-epoch": 1723970668,
31
+ "source-date-epoch": 1734537491,
32
32
  "versions": [
33
+ "4.0.0",
33
34
  "3.12.0",
34
35
  "3.11.2",
35
36
  "3.11.1",
@@ -55,7 +56,7 @@ def get_provider_info():
55
56
  "1.0.1",
56
57
  "1.0.0",
57
58
  ],
58
- "dependencies": ["apache-airflow>=2.8.0", "yandexcloud>=0.308.0", "yandex-query-client>=0.1.4"],
59
+ "dependencies": ["apache-airflow>=2.9.0", "yandexcloud>=0.308.0", "yandex-query-client>=0.1.4"],
59
60
  "integrations": [
60
61
  {
61
62
  "integration-name": "Yandex.Cloud",
@@ -16,12 +16,10 @@
16
16
  # under the License.
17
17
  from __future__ import annotations
18
18
 
19
- import warnings
20
19
  from typing import Any
21
20
 
22
21
  import yandexcloud
23
22
 
24
- from airflow.exceptions import AirflowProviderDeprecationWarning
25
23
  from airflow.hooks.base import BaseHook
26
24
  from airflow.providers.yandex.utils.credentials import (
27
25
  CredentialsType,
@@ -38,7 +36,6 @@ class YandexCloudBaseHook(BaseHook):
38
36
  A base hook for Yandex.Cloud related tasks.
39
37
 
40
38
  :param yandex_conn_id: The connection ID to use when fetching connection info
41
- :param connection_id: Deprecated, use yandex_conn_id instead
42
39
  :param default_folder_id: The folder ID to use instead of connection folder ID
43
40
  :param default_public_ssh_key: The key to use instead of connection key
44
41
  :param default_service_account_id: The service account ID to use instead of key service account ID
@@ -96,16 +93,6 @@ class YandexCloudBaseHook(BaseHook):
96
93
  ),
97
94
  }
98
95
 
99
- @classmethod
100
- def provider_user_agent(cls) -> str | None:
101
- warnings.warn(
102
- "Using `provider_user_agent` in `YandexCloudBaseHook` is deprecated. "
103
- "Please use it in `utils.user_agent` instead.",
104
- AirflowProviderDeprecationWarning,
105
- stacklevel=2,
106
- )
107
- return provider_user_agent()
108
-
109
96
  @classmethod
110
97
  def get_ui_field_behaviour(cls) -> dict[str, Any]:
111
98
  """Return custom UI field behaviour for Yandex connection."""
@@ -116,21 +103,14 @@ class YandexCloudBaseHook(BaseHook):
116
103
 
117
104
  def __init__(
118
105
  self,
119
- # connection_id is deprecated, use yandex_conn_id instead
120
- connection_id: str | None = None,
121
106
  yandex_conn_id: str | None = None,
122
107
  default_folder_id: str | None = None,
123
108
  default_public_ssh_key: str | None = None,
124
109
  default_service_account_id: str | None = None,
125
110
  ) -> None:
126
111
  super().__init__()
127
- if connection_id:
128
- warnings.warn(
129
- "Using `connection_id` is deprecated. Please use `yandex_conn_id` parameter.",
130
- AirflowProviderDeprecationWarning,
131
- stacklevel=2,
132
- )
133
- self.connection_id = yandex_conn_id or connection_id or default_conn_name
112
+
113
+ self.connection_id = yandex_conn_id or default_conn_name
134
114
  self.connection = self.get_connection(self.connection_id)
135
115
  self.extras = self.connection.extra_dejson
136
116
  self.credentials: CredentialsType = get_credentials(
@@ -16,11 +16,10 @@
16
16
  # under the License.
17
17
  from __future__ import annotations
18
18
 
19
- import warnings
19
+ from collections.abc import Iterable, Sequence
20
20
  from dataclasses import dataclass
21
- from typing import TYPE_CHECKING, Iterable, Sequence
21
+ from typing import TYPE_CHECKING
22
22
 
23
- from airflow.exceptions import AirflowProviderDeprecationWarning
24
23
  from airflow.models import BaseOperator
25
24
  from airflow.providers.yandex.hooks.dataproc import DataprocHook
26
25
 
@@ -268,16 +267,6 @@ class DataprocBaseOperator(BaseOperator):
268
267
  def _setup(self, context: Context) -> DataprocHook:
269
268
  if self.cluster_id is None:
270
269
  self.cluster_id = context["task_instance"].xcom_pull(key="cluster_id")
271
- if self.yandex_conn_id is None:
272
- xcom_yandex_conn_id = context["task_instance"].xcom_pull(key="yandexcloud_connection_id")
273
- if xcom_yandex_conn_id:
274
- warnings.warn(
275
- "Implicit pass of `yandex_conn_id` is deprecated, please pass it explicitly",
276
- AirflowProviderDeprecationWarning,
277
- stacklevel=2,
278
- )
279
- self.yandex_conn_id = xcom_yandex_conn_id
280
-
281
270
  return DataprocHook(yandex_conn_id=self.yandex_conn_id)
282
271
 
283
272
  def execute(self, context: Context):
@@ -16,8 +16,9 @@
16
16
  # under the License.
17
17
  from __future__ import annotations
18
18
 
19
+ from collections.abc import Sequence
19
20
  from functools import cached_property
20
- from typing import TYPE_CHECKING, Any, Sequence
21
+ from typing import TYPE_CHECKING, Any
21
22
 
22
23
  from airflow.models import BaseOperator
23
24
  from airflow.providers.yandex.hooks.yq import YQHook
@@ -1,11 +1,11 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.3
2
2
  Name: apache-airflow-providers-yandex
3
- Version: 3.12.0rc1
3
+ Version: 4.0.0rc1
4
4
  Summary: Provider package apache-airflow-providers-yandex for Apache Airflow
5
5
  Keywords: airflow-provider,yandex,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.8
8
+ Requires-Python: ~=3.9
9
9
  Description-Content-Type: text/x-rst
10
10
  Classifier: Development Status :: 5 - Production/Stable
11
11
  Classifier: Environment :: Console
@@ -15,21 +15,20 @@ Classifier: Intended Audience :: System Administrators
15
15
  Classifier: Framework :: Apache Airflow
16
16
  Classifier: Framework :: Apache Airflow :: Provider
17
17
  Classifier: License :: OSI Approved :: Apache Software License
18
- Classifier: Programming Language :: Python :: 3.8
19
18
  Classifier: Programming Language :: Python :: 3.9
20
19
  Classifier: Programming Language :: Python :: 3.10
21
20
  Classifier: Programming Language :: Python :: 3.11
22
21
  Classifier: Programming Language :: Python :: 3.12
23
22
  Classifier: Topic :: System :: Monitoring
24
- Requires-Dist: apache-airflow>=2.8.0rc0
23
+ Requires-Dist: apache-airflow>=2.9.0rc0
25
24
  Requires-Dist: yandex-query-client>=0.1.4
26
25
  Requires-Dist: yandexcloud>=0.308.0
27
26
  Project-URL: Bug Tracker, https://github.com/apache/airflow/issues
28
- Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-yandex/3.12.0/changelog.html
29
- Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-yandex/3.12.0
27
+ Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.0/changelog.html
28
+ Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.0
30
29
  Project-URL: Slack Chat, https://s.apache.org/airflow-slack
31
30
  Project-URL: Source Code, https://github.com/apache/airflow
32
- Project-URL: Twitter, https://twitter.com/ApacheAirflow
31
+ Project-URL: Twitter, https://x.com/ApacheAirflow
33
32
  Project-URL: YouTube, https://www.youtube.com/channel/UCSXwxpWZQ7XZ1WL3wqevChA/
34
33
 
35
34
 
@@ -76,7 +75,7 @@ Project-URL: YouTube, https://www.youtube.com/channel/UCSXwxpWZQ7XZ1WL3wqevChA/
76
75
 
77
76
  Package ``apache-airflow-providers-yandex``
78
77
 
79
- Release: ``3.12.0.rc1``
78
+ Release: ``4.0.0.rc1``
80
79
 
81
80
 
82
81
  This package is for Yandex, including:
@@ -91,7 +90,7 @@ This is a provider package for ``yandex`` provider. All classes for this provide
91
90
  are in ``airflow.providers.yandex`` python package.
92
91
 
93
92
  You can find package information and changelog for the provider
94
- in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-yandex/3.12.0/>`_.
93
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.0/>`_.
95
94
 
96
95
  Installation
97
96
  ------------
@@ -100,7 +99,7 @@ You can install this package on top of an existing Airflow 2 installation (see `
100
99
  for the minimum Airflow version supported) via
101
100
  ``pip install apache-airflow-providers-yandex``
102
101
 
103
- The package supports the following python versions: 3.8,3.9,3.10,3.11,3.12
102
+ The package supports the following python versions: 3.9,3.10,3.11,3.12
104
103
 
105
104
  Requirements
106
105
  ------------
@@ -108,10 +107,10 @@ Requirements
108
107
  ======================= ==================
109
108
  PIP package Version required
110
109
  ======================= ==================
111
- ``apache-airflow`` ``>=2.8.0``
110
+ ``apache-airflow`` ``>=2.9.0``
112
111
  ``yandexcloud`` ``>=0.308.0``
113
112
  ``yandex-query-client`` ``>=0.1.4``
114
113
  ======================= ==================
115
114
 
116
115
  The changelog for the provider package can be found in the
117
- `changelog <https://airflow.apache.org/docs/apache-airflow-providers-yandex/3.12.0/changelog.html>`_.
116
+ `changelog <https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.0/changelog.html>`_.
@@ -1,17 +1,15 @@
1
1
  airflow/providers/yandex/LICENSE,sha256=FFb4jd2AXnOOf7XLP04pQW6jbdhG49TxlGY6fFpCV1Y,13609
2
- airflow/providers/yandex/__init__.py,sha256=icjIfW_ya1vvqiD0HpHgBf7Jq1HuS_li4-8Kd7GKwck,1494
3
- airflow/providers/yandex/get_provider_info.py,sha256=Bf4RoWGLV7qisIZH-_J9bi2MQLnCxziXdMGxpN3siwg,4761
2
+ airflow/providers/yandex/__init__.py,sha256=m2ruvDYYUCBehJ3b6I7vAwXlsID-4pBahWYBwcWOHGc,1493
3
+ airflow/providers/yandex/get_provider_info.py,sha256=RsccI_oEi1VUlbtGRRyYH4bSV0vCXYnmIsT7STdekcc,4782
4
4
  airflow/providers/yandex/hooks/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
5
5
  airflow/providers/yandex/hooks/dataproc.py,sha256=8ykGvlZUAjAKHpypiOYcWVJk7u-WNjfEohuyOy1Okss,1944
6
- airflow/providers/yandex/hooks/yandex.py,sha256=z8HYXIUkBxhDL2vQUUrNu4xkAPf3rjMv0SkP187odTk,7299
7
- airflow/providers/yandex/hooks/yandexcloud_dataproc.py,sha256=-JVJm3YLkDbJZKauCR1oCnWNkdLUJa1Fj_5HmZq1f44,1243
6
+ airflow/providers/yandex/hooks/yandex.py,sha256=9zca0C_qNH9BOpz8HyLruz5P30rt-x1YvlYXbUCIqDI,6434
8
7
  airflow/providers/yandex/hooks/yq.py,sha256=Qh1ZTp8OVKvQ6sFzmKUMe3kbkYT5v7D4qEq6VsKtB2k,3503
9
8
  airflow/providers/yandex/links/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
10
9
  airflow/providers/yandex/links/yq.py,sha256=jsy3liqQFk1eSSdK9YDbor0Epp7ng_q2ueVIwsD2i-8,1578
11
10
  airflow/providers/yandex/operators/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
12
- airflow/providers/yandex/operators/dataproc.py,sha256=JGBwX_ae3OZ4XtPVdvYi_XFC4sibI94mhBMbDDn0KT4,26181
13
- airflow/providers/yandex/operators/yandexcloud_dataproc.py,sha256=bDLMwevS5spRfVEtixdKhQTC9gqDMm9himLrRohJwKQ,1255
14
- airflow/providers/yandex/operators/yq.py,sha256=lGqbogakylV4s5D5movQRL4v3IU2Qt1JHH8ygo3Hd2Q,3223
11
+ airflow/providers/yandex/operators/dataproc.py,sha256=6lFe7BfVVauUx6dHGGfspmLSufO9hAmQSyz5-XTwMZk,25654
12
+ airflow/providers/yandex/operators/yq.py,sha256=LCw8uHhU0slB13yOUXCSzTDtmv1_ehPWvWwQeYSfcco,3250
15
13
  airflow/providers/yandex/secrets/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
16
14
  airflow/providers/yandex/secrets/lockbox.py,sha256=gUYWJE2qEvAZRz35qv0iKYK33BGnWesahZFuQgK5_kM,12168
17
15
  airflow/providers/yandex/utils/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
@@ -19,7 +17,7 @@ airflow/providers/yandex/utils/credentials.py,sha256=l-8lIkQaIXTsNP_hMfP_tVADM54
19
17
  airflow/providers/yandex/utils/defaults.py,sha256=CXt75MhGJe8echoDpl1vR4VG5bEvYDDjIHmFqckDh2w,950
20
18
  airflow/providers/yandex/utils/fields.py,sha256=1D8SDWH8h0djj5Hnk50w6BpPeNJyP-689Qfjpkr-yCg,1728
21
19
  airflow/providers/yandex/utils/user_agent.py,sha256=AC-WEzhjxkgUYOy4LdX2-nnUZdMhKRRUCJ2_TjfNm6k,1839
22
- apache_airflow_providers_yandex-3.12.0rc1.dist-info/entry_points.txt,sha256=ApXKRkvdgU2QNSQovjewC0b-LptwfBGBnJB3LTgBNx8,102
23
- apache_airflow_providers_yandex-3.12.0rc1.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
24
- apache_airflow_providers_yandex-3.12.0rc1.dist-info/METADATA,sha256=cdmIvDbR-WYqvFvYvXjby5_KBRgvah7i0kjTgOw4EFo,4919
25
- apache_airflow_providers_yandex-3.12.0rc1.dist-info/RECORD,,
20
+ apache_airflow_providers_yandex-4.0.0rc1.dist-info/entry_points.txt,sha256=ApXKRkvdgU2QNSQovjewC0b-LptwfBGBnJB3LTgBNx8,102
21
+ apache_airflow_providers_yandex-4.0.0rc1.dist-info/WHEEL,sha256=CpUCUxeHQbRN5UGRQHYRJorO5Af-Qy_fHMctcQ8DSGI,82
22
+ apache_airflow_providers_yandex-4.0.0rc1.dist-info/METADATA,sha256=PcyLPUiTY_Q9VUECMUIhQgNRD8_D3h2hjJbWeJEPz8U,4853
23
+ apache_airflow_providers_yandex-4.0.0rc1.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: flit 3.9.0
2
+ Generator: flit 3.10.1
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
@@ -1,30 +0,0 @@
1
- # Licensed to the Apache Software Foundation (ASF) under one
2
- # or more contributor license agreements. See the NOTICE file
3
- # distributed with this work for additional information
4
- # regarding copyright ownership. The ASF licenses this file
5
- # to you under the Apache License, Version 2.0 (the
6
- # "License"); you may not use this file except in compliance
7
- # with the License. You may obtain a copy of the License at
8
- #
9
- # http://www.apache.org/licenses/LICENSE-2.0
10
- #
11
- # Unless required by applicable law or agreed to in writing,
12
- # software distributed under the License is distributed on an
13
- # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
- # KIND, either express or implied. See the License for the
15
- # specific language governing permissions and limitations
16
- # under the License.
17
- """This module is deprecated. Please use :mod:`airflow.providers.yandex.hooks.dataproc` instead."""
18
-
19
- from __future__ import annotations
20
-
21
- import warnings
22
-
23
- from airflow.exceptions import AirflowProviderDeprecationWarning
24
- from airflow.providers.yandex.hooks.dataproc import * # noqa: F403
25
-
26
- warnings.warn(
27
- "This module is deprecated. Please use `airflow.providers.yandex.hooks.dataproc` instead.",
28
- AirflowProviderDeprecationWarning,
29
- stacklevel=2,
30
- )
@@ -1,30 +0,0 @@
1
- # Licensed to the Apache Software Foundation (ASF) under one
2
- # or more contributor license agreements. See the NOTICE file
3
- # distributed with this work for additional information
4
- # regarding copyright ownership. The ASF licenses this file
5
- # to you under the Apache License, Version 2.0 (the
6
- # "License"); you may not use this file except in compliance
7
- # with the License. You may obtain a copy of the License at
8
- #
9
- # http://www.apache.org/licenses/LICENSE-2.0
10
- #
11
- # Unless required by applicable law or agreed to in writing,
12
- # software distributed under the License is distributed on an
13
- # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
- # KIND, either express or implied. See the License for the
15
- # specific language governing permissions and limitations
16
- # under the License.
17
- """This module is deprecated. Please use :mod:`airflow.providers.yandex.operators.dataproc` instead."""
18
-
19
- from __future__ import annotations
20
-
21
- import warnings
22
-
23
- from airflow.exceptions import AirflowProviderDeprecationWarning
24
- from airflow.providers.yandex.operators.dataproc import * # noqa: F403
25
-
26
- warnings.warn(
27
- "This module is deprecated. Please use `airflow.providers.yandex.operators.dataproc` instead.",
28
- AirflowProviderDeprecationWarning,
29
- stacklevel=2,
30
- )