apache-airflow-providers-yandex 4.0.1rc1__tar.gz → 4.0.2__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 (23) hide show
  1. {apache_airflow_providers_yandex-4.0.1rc1 → apache_airflow_providers_yandex-4.0.2}/PKG-INFO +46 -26
  2. apache_airflow_providers_yandex-4.0.2/README.rst +83 -0
  3. {apache_airflow_providers_yandex-4.0.1rc1 → apache_airflow_providers_yandex-4.0.2}/pyproject.toml +34 -9
  4. {apache_airflow_providers_yandex-4.0.1rc1 → apache_airflow_providers_yandex-4.0.2}/src/airflow/providers/yandex/__init__.py +1 -1
  5. {apache_airflow_providers_yandex-4.0.1rc1 → apache_airflow_providers_yandex-4.0.2}/src/airflow/providers/yandex/get_provider_info.py +4 -1
  6. {apache_airflow_providers_yandex-4.0.1rc1 → apache_airflow_providers_yandex-4.0.2}/src/airflow/providers/yandex/links/yq.py +8 -1
  7. apache_airflow_providers_yandex-4.0.1rc1/README.rst +0 -65
  8. {apache_airflow_providers_yandex-4.0.1rc1 → apache_airflow_providers_yandex-4.0.2}/src/airflow/providers/yandex/LICENSE +0 -0
  9. {apache_airflow_providers_yandex-4.0.1rc1 → apache_airflow_providers_yandex-4.0.2}/src/airflow/providers/yandex/hooks/__init__.py +0 -0
  10. {apache_airflow_providers_yandex-4.0.1rc1 → apache_airflow_providers_yandex-4.0.2}/src/airflow/providers/yandex/hooks/dataproc.py +0 -0
  11. {apache_airflow_providers_yandex-4.0.1rc1 → apache_airflow_providers_yandex-4.0.2}/src/airflow/providers/yandex/hooks/yandex.py +0 -0
  12. {apache_airflow_providers_yandex-4.0.1rc1 → apache_airflow_providers_yandex-4.0.2}/src/airflow/providers/yandex/hooks/yq.py +0 -0
  13. {apache_airflow_providers_yandex-4.0.1rc1 → apache_airflow_providers_yandex-4.0.2}/src/airflow/providers/yandex/links/__init__.py +0 -0
  14. {apache_airflow_providers_yandex-4.0.1rc1 → apache_airflow_providers_yandex-4.0.2}/src/airflow/providers/yandex/operators/__init__.py +0 -0
  15. {apache_airflow_providers_yandex-4.0.1rc1 → apache_airflow_providers_yandex-4.0.2}/src/airflow/providers/yandex/operators/dataproc.py +0 -0
  16. {apache_airflow_providers_yandex-4.0.1rc1 → apache_airflow_providers_yandex-4.0.2}/src/airflow/providers/yandex/operators/yq.py +0 -0
  17. {apache_airflow_providers_yandex-4.0.1rc1 → apache_airflow_providers_yandex-4.0.2}/src/airflow/providers/yandex/secrets/__init__.py +0 -0
  18. {apache_airflow_providers_yandex-4.0.1rc1 → apache_airflow_providers_yandex-4.0.2}/src/airflow/providers/yandex/secrets/lockbox.py +2 -2
  19. {apache_airflow_providers_yandex-4.0.1rc1 → apache_airflow_providers_yandex-4.0.2}/src/airflow/providers/yandex/utils/__init__.py +0 -0
  20. {apache_airflow_providers_yandex-4.0.1rc1 → apache_airflow_providers_yandex-4.0.2}/src/airflow/providers/yandex/utils/credentials.py +0 -0
  21. {apache_airflow_providers_yandex-4.0.1rc1 → apache_airflow_providers_yandex-4.0.2}/src/airflow/providers/yandex/utils/defaults.py +0 -0
  22. {apache_airflow_providers_yandex-4.0.1rc1 → apache_airflow_providers_yandex-4.0.2}/src/airflow/providers/yandex/utils/fields.py +0 -0
  23. {apache_airflow_providers_yandex-4.0.1rc1 → apache_airflow_providers_yandex-4.0.2}/src/airflow/providers/yandex/utils/user_agent.py +0 -0
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.3
1
+ Metadata-Version: 2.4
2
2
  Name: apache-airflow-providers-yandex
3
- Version: 4.0.1rc1
3
+ Version: 4.0.2
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>
@@ -20,44 +20,45 @@ 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>=2.9.0rc0
23
+ Requires-Dist: apache-airflow>=2.9.0
24
24
  Requires-Dist: yandexcloud>=0.308.0
25
25
  Requires-Dist: yandex-query-client>=0.1.4
26
+ Requires-Dist: apache-airflow-providers-common-compat ; extra == "common-compat"
26
27
  Project-URL: Bug Tracker, https://github.com/apache/airflow/issues
27
- Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.1/changelog.html
28
- Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.1
28
+ Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.2/changelog.html
29
+ Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.2
29
30
  Project-URL: Slack Chat, https://s.apache.org/airflow-slack
30
31
  Project-URL: Source Code, https://github.com/apache/airflow
31
32
  Project-URL: Twitter, https://x.com/ApacheAirflow
32
33
  Project-URL: YouTube, https://www.youtube.com/channel/UCSXwxpWZQ7XZ1WL3wqevChA/
34
+ Provides-Extra: common-compat
33
35
 
34
36
 
35
- .. Licensed to the Apache Software Foundation (ASF) under one
36
- or more contributor license agreements. See the NOTICE file
37
- distributed with this work for additional information
38
- regarding copyright ownership. The ASF licenses this file
39
- to you under the Apache License, Version 2.0 (the
40
- "License"); you may not use this file except in compliance
41
- with the License. You may obtain a copy of the License at
37
+ .. Licensed to the Apache Software Foundation (ASF) under one
38
+ or more contributor license agreements. See the NOTICE file
39
+ distributed with this work for additional information
40
+ regarding copyright ownership. The ASF licenses this file
41
+ to you under the Apache License, Version 2.0 (the
42
+ "License"); you may not use this file except in compliance
43
+ with the License. You may obtain a copy of the License at
42
44
 
43
- .. http://www.apache.org/licenses/LICENSE-2.0
45
+ .. http://www.apache.org/licenses/LICENSE-2.0
44
46
 
45
- .. Unless required by applicable law or agreed to in writing,
46
- software distributed under the License is distributed on an
47
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
48
- KIND, either express or implied. See the License for the
49
- specific language governing permissions and limitations
50
- under the License.
47
+ .. Unless required by applicable law or agreed to in writing,
48
+ software distributed under the License is distributed on an
49
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
50
+ KIND, either express or implied. See the License for the
51
+ specific language governing permissions and limitations
52
+ under the License.
51
53
 
52
- .. NOTE! THIS FILE IS AUTOMATICALLY GENERATED AND WILL BE OVERWRITTEN!
53
-
54
- .. IF YOU WANT TO MODIFY TEMPLATE FOR THIS FILE, YOU SHOULD MODIFY THE TEMPLATE
55
- `PROVIDER_README_TEMPLATE.rst.jinja2` IN the `dev/breeze/src/airflow_breeze/templates` DIRECTORY
54
+ .. NOTE! THIS FILE IS AUTOMATICALLY GENERATED AND WILL BE OVERWRITTEN!
56
55
 
56
+ .. IF YOU WANT TO MODIFY TEMPLATE FOR THIS FILE, YOU SHOULD MODIFY THE TEMPLATE
57
+ ``PROVIDER_README_TEMPLATE.rst.jinja2`` IN the ``dev/breeze/src/airflow_breeze/templates`` DIRECTORY
57
58
 
58
59
  Package ``apache-airflow-providers-yandex``
59
60
 
60
- Release: ``4.0.1``
61
+ Release: ``4.0.2``
61
62
 
62
63
 
63
64
  This package is for Yandex, including:
@@ -72,7 +73,7 @@ This is a provider package for ``yandex`` provider. All classes for this provide
72
73
  are in ``airflow.providers.yandex`` python package.
73
74
 
74
75
  You can find package information and changelog for the provider
75
- in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.1/>`_.
76
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.2/>`_.
76
77
 
77
78
  Installation
78
79
  ------------
@@ -94,6 +95,25 @@ PIP package Version required
94
95
  ``yandex-query-client`` ``>=0.1.4``
95
96
  ======================= ==================
96
97
 
98
+ Cross provider package dependencies
99
+ -----------------------------------
100
+
101
+ Those are dependencies that might be needed in order to use all the features of the package.
102
+ You need to install the specified provider packages in order to use them.
103
+
104
+ You can install such cross-provider dependencies when installing from PyPI. For example:
105
+
106
+ .. code-block:: bash
107
+
108
+ pip install apache-airflow-providers-yandex[common.compat]
109
+
110
+
111
+ ================================================================================================================== =================
112
+ Dependent package Extra
113
+ ================================================================================================================== =================
114
+ `apache-airflow-providers-common-compat <https://airflow.apache.org/docs/apache-airflow-providers-common-compat>`_ ``common.compat``
115
+ ================================================================================================================== =================
116
+
97
117
  The changelog for the provider package can be found in the
98
- `changelog <https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.1/changelog.html>`_.
118
+ `changelog <https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.2/changelog.html>`_.
99
119
 
@@ -0,0 +1,83 @@
1
+
2
+ .. Licensed to the Apache Software Foundation (ASF) under one
3
+ or more contributor license agreements. See the NOTICE file
4
+ distributed with this work for additional information
5
+ regarding copyright ownership. The ASF licenses this file
6
+ to you under the Apache License, Version 2.0 (the
7
+ "License"); you may not use this file except in compliance
8
+ with the License. You may obtain a copy of the License at
9
+
10
+ .. http://www.apache.org/licenses/LICENSE-2.0
11
+
12
+ .. Unless required by applicable law or agreed to in writing,
13
+ software distributed under the License is distributed on an
14
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15
+ KIND, either express or implied. See the License for the
16
+ specific language governing permissions and limitations
17
+ under the License.
18
+
19
+ .. NOTE! THIS FILE IS AUTOMATICALLY GENERATED AND WILL BE OVERWRITTEN!
20
+
21
+ .. IF YOU WANT TO MODIFY TEMPLATE FOR THIS FILE, YOU SHOULD MODIFY THE TEMPLATE
22
+ ``PROVIDER_README_TEMPLATE.rst.jinja2`` IN the ``dev/breeze/src/airflow_breeze/templates`` DIRECTORY
23
+
24
+ Package ``apache-airflow-providers-yandex``
25
+
26
+ Release: ``4.0.2``
27
+
28
+
29
+ This package is for Yandex, including:
30
+
31
+ - `Yandex.Cloud <https://cloud.yandex.com/>`__
32
+
33
+
34
+ Provider package
35
+ ----------------
36
+
37
+ This is a provider package for ``yandex`` provider. All classes for this provider package
38
+ are in ``airflow.providers.yandex`` python package.
39
+
40
+ You can find package information and changelog for the provider
41
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.2/>`_.
42
+
43
+ Installation
44
+ ------------
45
+
46
+ You can install this package on top of an existing Airflow 2 installation (see ``Requirements`` below
47
+ for the minimum Airflow version supported) via
48
+ ``pip install apache-airflow-providers-yandex``
49
+
50
+ The package supports the following python versions: 3.9,3.10,3.11,3.12
51
+
52
+ Requirements
53
+ ------------
54
+
55
+ ======================= ==================
56
+ PIP package Version required
57
+ ======================= ==================
58
+ ``apache-airflow`` ``>=2.9.0``
59
+ ``yandexcloud`` ``>=0.308.0``
60
+ ``yandex-query-client`` ``>=0.1.4``
61
+ ======================= ==================
62
+
63
+ Cross provider package dependencies
64
+ -----------------------------------
65
+
66
+ Those are dependencies that might be needed in order to use all the features of the package.
67
+ You need to install the specified provider packages in order to use them.
68
+
69
+ You can install such cross-provider dependencies when installing from PyPI. For example:
70
+
71
+ .. code-block:: bash
72
+
73
+ pip install apache-airflow-providers-yandex[common.compat]
74
+
75
+
76
+ ================================================================================================================== =================
77
+ Dependent package Extra
78
+ ================================================================================================================== =================
79
+ `apache-airflow-providers-common-compat <https://airflow.apache.org/docs/apache-airflow-providers-common-compat>`_ ``common.compat``
80
+ ================================================================================================================== =================
81
+
82
+ The changelog for the provider package can be found in the
83
+ `changelog <https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.2/changelog.html>`_.
@@ -20,12 +20,12 @@
20
20
  # IF YOU WANT TO MODIFY THIS FILE EXCEPT DEPENDENCIES, YOU SHOULD MODIFY THE TEMPLATE
21
21
  # `pyproject_TEMPLATE.toml.jinja2` IN the `dev/breeze/src/airflow_breeze/templates` DIRECTORY
22
22
  [build-system]
23
- requires = ["flit_core==3.10.1"]
23
+ requires = ["flit_core==3.11.0"]
24
24
  build-backend = "flit_core.buildapi"
25
25
 
26
26
  [project]
27
27
  name = "apache-airflow-providers-yandex"
28
- version = "4.0.1.rc1"
28
+ version = "4.0.2"
29
29
  description = "Provider package apache-airflow-providers-yandex for Apache Airflow"
30
30
  readme = "README.rst"
31
31
  authors = [
@@ -52,17 +52,45 @@ classifiers = [
52
52
  ]
53
53
  requires-python = "~=3.9"
54
54
 
55
- # The dependencies should be modified in place in the generated file
55
+ # The dependencies should be modified in place in the generated file.
56
56
  # Any change in the dependencies is preserved when the file is regenerated
57
+ # Make sure to run ``breeze static-checks --type update-providers-dependencies --all-files``
58
+ # After you modify the dependencies, and rebuild your Breeze CI image with ``breeze ci-image build``
57
59
  dependencies = [
58
- "apache-airflow>=2.9.0rc0",
60
+ "apache-airflow>=2.9.0",
59
61
  "yandexcloud>=0.308.0",
60
62
  "yandex-query-client>=0.1.4",
61
63
  ]
62
64
 
65
+ # The optional dependencies should be modified in place in the generated file
66
+ # Any change in the dependencies is preserved when the file is regenerated
67
+ [project.optional-dependencies]
68
+ "common.compat" = [
69
+ "apache-airflow-providers-common-compat"
70
+ ]
71
+
72
+ [dependency-groups]
73
+ dev = [
74
+ "apache-airflow",
75
+ "apache-airflow-task-sdk",
76
+ "apache-airflow-devel-common",
77
+ "apache-airflow-providers-common-compat",
78
+ # Additional devel dependencies (do not remove this line and add extra development dependencies)
79
+ ]
80
+
81
+ [tool.uv.sources]
82
+ # These names must match the names as defined in the pyproject.toml of the workspace items,
83
+ # *not* the workspace folder paths
84
+ apache-airflow = {workspace = true}
85
+ apache-airflow-devel-common = {workspace = true}
86
+ apache-airflow-task-sdk = {workspace = true}
87
+ apache-airflow-providers-common-sql = {workspace = true}
88
+ apache-airflow-providers-fab = {workspace = true}
89
+ apache-airflow-providers-standard = {workspace = true}
90
+
63
91
  [project.urls]
64
- "Documentation" = "https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.1"
65
- "Changelog" = "https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.1/changelog.html"
92
+ "Documentation" = "https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.2"
93
+ "Changelog" = "https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.2/changelog.html"
66
94
  "Bug Tracker" = "https://github.com/apache/airflow/issues"
67
95
  "Source Code" = "https://github.com/apache/airflow"
68
96
  "Slack Chat" = "https://s.apache.org/airflow-slack"
@@ -74,6 +102,3 @@ provider_info = "airflow.providers.yandex.get_provider_info:get_provider_info"
74
102
 
75
103
  [tool.flit.module]
76
104
  name = "airflow.providers.yandex"
77
-
78
- [tool.pytest.ini_options]
79
- ignore = "tests/system/"
@@ -29,7 +29,7 @@ from airflow import __version__ as airflow_version
29
29
 
30
30
  __all__ = ["__version__"]
31
31
 
32
- __version__ = "4.0.1"
32
+ __version__ = "4.0.2"
33
33
 
34
34
  if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
35
35
  "2.9.0"
@@ -27,8 +27,9 @@ def get_provider_info():
27
27
  "name": "Yandex",
28
28
  "description": "This package is for Yandex, including:\n\n - `Yandex.Cloud <https://cloud.yandex.com/>`__\n",
29
29
  "state": "ready",
30
- "source-date-epoch": 1739964637,
30
+ "source-date-epoch": 1741510019,
31
31
  "versions": [
32
+ "4.0.2",
32
33
  "4.0.1",
33
34
  "4.0.0",
34
35
  "3.12.0",
@@ -119,4 +120,6 @@ def get_provider_info():
119
120
  }
120
121
  },
121
122
  "dependencies": ["apache-airflow>=2.9.0", "yandexcloud>=0.308.0", "yandex-query-client>=0.1.4"],
123
+ "optional-dependencies": {"common.compat": ["apache-airflow-providers-common-compat"]},
124
+ "devel-dependencies": [],
122
125
  }
@@ -18,7 +18,7 @@ from __future__ import annotations
18
18
 
19
19
  from typing import TYPE_CHECKING
20
20
 
21
- from airflow.models import BaseOperatorLink, XCom
21
+ from airflow.models import XCom
22
22
 
23
23
  if TYPE_CHECKING:
24
24
  from airflow.models import BaseOperator
@@ -30,6 +30,13 @@ if TYPE_CHECKING:
30
30
  # TODO: Remove once provider drops support for Airflow 2
31
31
  from airflow.utils.context import Context
32
32
 
33
+ from airflow.providers.common.compat.version_compat import AIRFLOW_V_3_0_PLUS
34
+
35
+ if AIRFLOW_V_3_0_PLUS:
36
+ from airflow.sdk import BaseOperatorLink
37
+ else:
38
+ from airflow.models.baseoperatorlink import BaseOperatorLink # type: ignore[no-redef]
39
+
33
40
  XCOM_WEBLINK_KEY = "web_link"
34
41
 
35
42
 
@@ -1,65 +0,0 @@
1
-
2
- .. Licensed to the Apache Software Foundation (ASF) under one
3
- or more contributor license agreements. See the NOTICE file
4
- distributed with this work for additional information
5
- regarding copyright ownership. The ASF licenses this file
6
- to you under the Apache License, Version 2.0 (the
7
- "License"); you may not use this file except in compliance
8
- with the License. You may obtain a copy of the License at
9
-
10
- .. http://www.apache.org/licenses/LICENSE-2.0
11
-
12
- .. Unless required by applicable law or agreed to in writing,
13
- software distributed under the License is distributed on an
14
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15
- KIND, either express or implied. See the License for the
16
- specific language governing permissions and limitations
17
- under the License.
18
-
19
- .. NOTE! THIS FILE IS AUTOMATICALLY GENERATED AND WILL BE OVERWRITTEN!
20
-
21
- .. IF YOU WANT TO MODIFY TEMPLATE FOR THIS FILE, YOU SHOULD MODIFY THE TEMPLATE
22
- `PROVIDER_README_TEMPLATE.rst.jinja2` IN the `dev/breeze/src/airflow_breeze/templates` DIRECTORY
23
-
24
-
25
- Package ``apache-airflow-providers-yandex``
26
-
27
- Release: ``4.0.1``
28
-
29
-
30
- This package is for Yandex, including:
31
-
32
- - `Yandex.Cloud <https://cloud.yandex.com/>`__
33
-
34
-
35
- Provider package
36
- ----------------
37
-
38
- This is a provider package for ``yandex`` provider. All classes for this provider package
39
- are in ``airflow.providers.yandex`` python package.
40
-
41
- You can find package information and changelog for the provider
42
- in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.1/>`_.
43
-
44
- Installation
45
- ------------
46
-
47
- You can install this package on top of an existing Airflow 2 installation (see ``Requirements`` below
48
- for the minimum Airflow version supported) via
49
- ``pip install apache-airflow-providers-yandex``
50
-
51
- The package supports the following python versions: 3.9,3.10,3.11,3.12
52
-
53
- Requirements
54
- ------------
55
-
56
- ======================= ==================
57
- PIP package Version required
58
- ======================= ==================
59
- ``apache-airflow`` ``>=2.9.0``
60
- ``yandexcloud`` ``>=0.308.0``
61
- ``yandex-query-client`` ``>=0.1.4``
62
- ======================= ==================
63
-
64
- The changelog for the provider package can be found in the
65
- `changelog <https://airflow.apache.org/docs/apache-airflow-providers-yandex/4.0.1/changelog.html>`_.
@@ -21,14 +21,14 @@ from __future__ import annotations
21
21
  from functools import cached_property
22
22
  from typing import Any
23
23
 
24
- import yandexcloud
25
-
26
24
  import yandex.cloud.lockbox.v1.payload_pb2 as payload_pb
27
25
  import yandex.cloud.lockbox.v1.payload_service_pb2 as payload_service_pb
28
26
  import yandex.cloud.lockbox.v1.payload_service_pb2_grpc as payload_service_pb_grpc
29
27
  import yandex.cloud.lockbox.v1.secret_pb2 as secret_pb
30
28
  import yandex.cloud.lockbox.v1.secret_service_pb2 as secret_service_pb
31
29
  import yandex.cloud.lockbox.v1.secret_service_pb2_grpc as secret_service_pb_grpc
30
+ import yandexcloud
31
+
32
32
  from airflow.models import Connection
33
33
  from airflow.providers.yandex.utils.credentials import get_credentials
34
34
  from airflow.providers.yandex.utils.defaults import default_conn_name