apache-airflow-providers-yandex 3.12.0__tar.gz → 4.0.0__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 (24) hide show
  1. {apache_airflow_providers_yandex-3.12.0 → apache_airflow_providers_yandex-4.0.0}/PKG-INFO +12 -13
  2. {apache_airflow_providers_yandex-3.12.0 → apache_airflow_providers_yandex-4.0.0}/README.rst +5 -5
  3. {apache_airflow_providers_yandex-3.12.0 → apache_airflow_providers_yandex-4.0.0}/airflow/providers/yandex/__init__.py +3 -3
  4. {apache_airflow_providers_yandex-3.12.0 → apache_airflow_providers_yandex-4.0.0}/airflow/providers/yandex/get_provider_info.py +3 -2
  5. {apache_airflow_providers_yandex-3.12.0 → apache_airflow_providers_yandex-4.0.0}/airflow/providers/yandex/hooks/yandex.py +2 -22
  6. {apache_airflow_providers_yandex-3.12.0 → apache_airflow_providers_yandex-4.0.0}/airflow/providers/yandex/operators/dataproc.py +2 -13
  7. {apache_airflow_providers_yandex-3.12.0 → apache_airflow_providers_yandex-4.0.0}/airflow/providers/yandex/operators/yq.py +2 -1
  8. {apache_airflow_providers_yandex-3.12.0 → apache_airflow_providers_yandex-4.0.0}/pyproject.toml +7 -9
  9. apache_airflow_providers_yandex-3.12.0/airflow/providers/yandex/hooks/yandexcloud_dataproc.py +0 -30
  10. apache_airflow_providers_yandex-3.12.0/airflow/providers/yandex/operators/yandexcloud_dataproc.py +0 -30
  11. {apache_airflow_providers_yandex-3.12.0 → apache_airflow_providers_yandex-4.0.0}/airflow/providers/yandex/LICENSE +0 -0
  12. {apache_airflow_providers_yandex-3.12.0 → apache_airflow_providers_yandex-4.0.0}/airflow/providers/yandex/hooks/__init__.py +0 -0
  13. {apache_airflow_providers_yandex-3.12.0 → apache_airflow_providers_yandex-4.0.0}/airflow/providers/yandex/hooks/dataproc.py +0 -0
  14. {apache_airflow_providers_yandex-3.12.0 → apache_airflow_providers_yandex-4.0.0}/airflow/providers/yandex/hooks/yq.py +0 -0
  15. {apache_airflow_providers_yandex-3.12.0 → apache_airflow_providers_yandex-4.0.0}/airflow/providers/yandex/links/__init__.py +0 -0
  16. {apache_airflow_providers_yandex-3.12.0 → apache_airflow_providers_yandex-4.0.0}/airflow/providers/yandex/links/yq.py +0 -0
  17. {apache_airflow_providers_yandex-3.12.0 → apache_airflow_providers_yandex-4.0.0}/airflow/providers/yandex/operators/__init__.py +0 -0
  18. {apache_airflow_providers_yandex-3.12.0 → apache_airflow_providers_yandex-4.0.0}/airflow/providers/yandex/secrets/__init__.py +0 -0
  19. {apache_airflow_providers_yandex-3.12.0 → apache_airflow_providers_yandex-4.0.0}/airflow/providers/yandex/secrets/lockbox.py +0 -0
  20. {apache_airflow_providers_yandex-3.12.0 → apache_airflow_providers_yandex-4.0.0}/airflow/providers/yandex/utils/__init__.py +0 -0
  21. {apache_airflow_providers_yandex-3.12.0 → apache_airflow_providers_yandex-4.0.0}/airflow/providers/yandex/utils/credentials.py +0 -0
  22. {apache_airflow_providers_yandex-3.12.0 → apache_airflow_providers_yandex-4.0.0}/airflow/providers/yandex/utils/defaults.py +0 -0
  23. {apache_airflow_providers_yandex-3.12.0 → apache_airflow_providers_yandex-4.0.0}/airflow/providers/yandex/utils/fields.py +0 -0
  24. {apache_airflow_providers_yandex-3.12.0 → apache_airflow_providers_yandex-4.0.0}/airflow/providers/yandex/utils/user_agent.py +0 -0
@@ -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.0
3
+ Version: 4.0.0
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.0
23
+ Requires-Dist: apache-airflow>=2.9.0
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``
78
+ Release: ``4.0.0``
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>`_.
@@ -42,7 +42,7 @@
42
42
 
43
43
  Package ``apache-airflow-providers-yandex``
44
44
 
45
- Release: ``3.12.0``
45
+ Release: ``4.0.0``
46
46
 
47
47
 
48
48
  This package is for Yandex, including:
@@ -57,7 +57,7 @@ This is a provider package for ``yandex`` provider. All classes for this provide
57
57
  are in ``airflow.providers.yandex`` python package.
58
58
 
59
59
  You can find package information and changelog for the provider
60
- in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-yandex/3.12.0/>`_.
60
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.0/>`_.
61
61
 
62
62
  Installation
63
63
  ------------
@@ -66,7 +66,7 @@ You can install this package on top of an existing Airflow 2 installation (see `
66
66
  for the minimum Airflow version supported) via
67
67
  ``pip install apache-airflow-providers-yandex``
68
68
 
69
- The package supports the following python versions: 3.8,3.9,3.10,3.11,3.12
69
+ The package supports the following python versions: 3.9,3.10,3.11,3.12
70
70
 
71
71
  Requirements
72
72
  ------------
@@ -74,10 +74,10 @@ Requirements
74
74
  ======================= ==================
75
75
  PIP package Version required
76
76
  ======================= ==================
77
- ``apache-airflow`` ``>=2.8.0``
77
+ ``apache-airflow`` ``>=2.9.0``
78
78
  ``yandexcloud`` ``>=0.308.0``
79
79
  ``yandex-query-client`` ``>=0.1.4``
80
80
  ======================= ==================
81
81
 
82
82
  The changelog for the provider package can be found in the
83
- `changelog <https://airflow.apache.org/docs/apache-airflow-providers-yandex/3.12.0/changelog.html>`_.
83
+ `changelog <https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.0/changelog.html>`_.
@@ -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
@@ -21,14 +21,13 @@
21
21
 
22
22
  # IF YOU WANT TO MODIFY THIS FILE, YOU SHOULD MODIFY THE TEMPLATE
23
23
  # `pyproject_TEMPLATE.toml.jinja2` IN the `dev/breeze/src/airflow_breeze/templates` DIRECTORY
24
- #
25
24
  [build-system]
26
- requires = ["flit_core >=3.2,<4"]
25
+ requires = ["flit_core==3.10.1"]
27
26
  build-backend = "flit_core.buildapi"
28
27
 
29
28
  [project]
30
29
  name = "apache-airflow-providers-yandex"
31
- version = "3.12.0"
30
+ version = "4.0.0"
32
31
  description = "Provider package apache-airflow-providers-yandex for Apache Airflow"
33
32
  readme = "README.rst"
34
33
  authors = [
@@ -47,27 +46,26 @@ classifiers = [
47
46
  "Framework :: Apache Airflow",
48
47
  "Framework :: Apache Airflow :: Provider",
49
48
  "License :: OSI Approved :: Apache Software License",
50
- "Programming Language :: Python :: 3.8",
51
49
  "Programming Language :: Python :: 3.9",
52
50
  "Programming Language :: Python :: 3.10",
53
51
  "Programming Language :: Python :: 3.11",
54
52
  "Programming Language :: Python :: 3.12",
55
53
  "Topic :: System :: Monitoring",
56
54
  ]
57
- requires-python = "~=3.8"
55
+ requires-python = "~=3.9"
58
56
  dependencies = [
59
- "apache-airflow>=2.8.0",
57
+ "apache-airflow>=2.9.0",
60
58
  "yandex-query-client>=0.1.4",
61
59
  "yandexcloud>=0.308.0",
62
60
  ]
63
61
 
64
62
  [project.urls]
65
- "Documentation" = "https://airflow.apache.org/docs/apache-airflow-providers-yandex/3.12.0"
66
- "Changelog" = "https://airflow.apache.org/docs/apache-airflow-providers-yandex/3.12.0/changelog.html"
63
+ "Documentation" = "https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.0"
64
+ "Changelog" = "https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.0/changelog.html"
67
65
  "Bug Tracker" = "https://github.com/apache/airflow/issues"
68
66
  "Source Code" = "https://github.com/apache/airflow"
69
67
  "Slack Chat" = "https://s.apache.org/airflow-slack"
70
- "Twitter" = "https://twitter.com/ApacheAirflow"
68
+ "Twitter" = "https://x.com/ApacheAirflow"
71
69
  "YouTube" = "https://www.youtube.com/channel/UCSXwxpWZQ7XZ1WL3wqevChA/"
72
70
 
73
71
  [project.entry-points."apache_airflow_provider"]
@@ -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
- )