This is an automated email from the ASF dual-hosted git repository.

eladkal pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/main by this push:
     new 35bc7be1d4d Support Python 3.13 in Yandex provider (#61380)
35bc7be1d4d is described below

commit 35bc7be1d4d5f290f417dd3ad251408f0097b8f1
Author: Elad Kalif <[email protected]>
AuthorDate: Wed Feb 4 06:57:20 2026 +0100

    Support Python 3.13 in Yandex provider (#61380)
    
    * Support Python 3.13 in Yandex provider
---
 dev/breeze/tests/test_selective_checks.py                   |  2 +-
 providers/yandex/docs/index.rst                             | 12 +++++++-----
 providers/yandex/provider.yaml                              |  2 --
 providers/yandex/pyproject.toml                             | 13 ++++++++++---
 .../src/airflow/providers/yandex/operators/dataproc.py      |  2 +-
 providers/yandex/tests/system/yandex/example_yandexcloud.py |  2 +-
 pyproject.toml                                              |  4 ++--
 7 files changed, 22 insertions(+), 15 deletions(-)

diff --git a/dev/breeze/tests/test_selective_checks.py 
b/dev/breeze/tests/test_selective_checks.py
index 0d30f975b0a..8e5c623a93e 100644
--- a/dev/breeze/tests/test_selective_checks.py
+++ b/dev/breeze/tests/test_selective_checks.py
@@ -1321,7 +1321,7 @@ def test_excluded_providers():
         {
             "excluded-providers-as-string": json.dumps(
                 {
-                    "3.13": ["apache.beam", "apache.kafka", "fab", "yandex", 
"ydb"],
+                    "3.13": ["apache.beam", "apache.kafka", "fab", "ydb"],
                 }
             ),
         },
diff --git a/providers/yandex/docs/index.rst b/providers/yandex/docs/index.rst
index 9c9e6c4c61c..86f7f778177 100644
--- a/providers/yandex/docs/index.rst
+++ b/providers/yandex/docs/index.rst
@@ -101,14 +101,16 @@ Requirements
 
 The minimum Apache Airflow version supported by this provider distribution is 
``2.11.0``.
 
-==========================================  
======================================
+==========================================  
=======================================
 PIP package                                 Version required
-==========================================  
======================================
+==========================================  
=======================================
 ``apache-airflow``                          ``>=2.11.0``
-``yandexcloud``                             ``>=0.308.0; python_version < 
"3.13"``
-``yandex-query-client``                     ``>=0.1.4; python_version < 
"3.13"``
+``yandexcloud``                             ``>=0.376.0; python_version >= 
"3.13"``
+``yandexcloud``                             ``>=0.328.0; python_version < 
"3.13"``
+``yandex-query-client``                     ``>=0.1.4``
 ``apache-airflow-providers-common-compat``  ``>=1.13.0``
-==========================================  
======================================
+``grpcio``                                  ``>=1.70.0; python_version >= 
"3.13"``
+==========================================  
=======================================
 
 Cross provider package dependencies
 -----------------------------------
diff --git a/providers/yandex/provider.yaml b/providers/yandex/provider.yaml
index bded2cc8b4c..0407d8191ff 100644
--- a/providers/yandex/provider.yaml
+++ b/providers/yandex/provider.yaml
@@ -66,8 +66,6 @@ versions:
   - 1.0.1
   - 1.0.0
 
-excluded-python-versions:
-  - "3.13"
 
 integrations:
   - integration-name: Yandex.Cloud
diff --git a/providers/yandex/pyproject.toml b/providers/yandex/pyproject.toml
index c8abece0ea3..b3183ce040b 100644
--- a/providers/yandex/pyproject.toml
+++ b/providers/yandex/pyproject.toml
@@ -48,9 +48,10 @@ classifiers = [
     "Programming Language :: Python :: 3.10",
     "Programming Language :: Python :: 3.11",
     "Programming Language :: Python :: 3.12",
+    "Programming Language :: Python :: 3.13",
     "Topic :: System :: Monitoring",
 ]
-requires-python = ">=3.10,!=3.13"
+requires-python = ">=3.10"
 
 # The dependencies should be modified in place in the generated file.
 # Any change in the dependencies is preserved when the file is regenerated
@@ -58,9 +59,15 @@ requires-python = ">=3.10,!=3.13"
 # After you modify the dependencies, and rebuild your Breeze CI image with 
``breeze ci-image build``
 dependencies = [
     "apache-airflow>=2.11.0",
-    "yandexcloud>=0.308.0; python_version < '3.13'",
-    "yandex-query-client>=0.1.4; python_version < '3.13'",
+    'yandexcloud>=0.376.0; python_version >= "3.13"',
+    'yandexcloud>=0.328.0; python_version < "3.13"',
+    "yandex-query-client>=0.1.4",
     "apache-airflow-providers-common-compat>=1.13.0",
+    # Adding temp min version for grpcio to address
+    # ERROR providers/yandex/tests/unit/yandex/operators/test_dataproc.py - 
RuntimeError: The grpc package installed is at version 1.68.1, but the 
generated code in yandex/cloud/endpoint/api_endpoint_service_pb2_grpc.py 
depends on grpcio>=1.70.0. Please upgrade your grpc module to grpcio>=1.70.0 or 
downgrade your generated code using grpcio-tools<=1.68.1.
+    # this dependency can be removed when yandexcloud bump min version of 
grpcio to 1.70
+    # 
https://github.com/yandex-cloud/python-sdk/blob/82493e32bbf1d678afbb8376632b3f5b5923fd10/pyproject.toml#L23
+    'grpcio>=1.70.0; python_version >= "3.13"',
 ]
 
 [dependency-groups]
diff --git 
a/providers/yandex/src/airflow/providers/yandex/operators/dataproc.py 
b/providers/yandex/src/airflow/providers/yandex/operators/dataproc.py
index e9375b3baaa..792b67b01af 100644
--- a/providers/yandex/src/airflow/providers/yandex/operators/dataproc.py
+++ b/providers/yandex/src/airflow/providers/yandex/operators/dataproc.py
@@ -240,7 +240,7 @@ class DataprocCreateClusterOperator(BaseOperator):
             initialization_actions=[
                 self.hook.sdk.wrappers.InitializationAction(
                     uri=init_action.uri,
-                    args=init_action.args,
+                    args=list(init_action.args),
                     timeout=init_action.timeout,
                 )
                 for init_action in self.initialization_actions
diff --git a/providers/yandex/tests/system/yandex/example_yandexcloud.py 
b/providers/yandex/tests/system/yandex/example_yandexcloud.py
index d19b41ec846..3e0b51ec09a 100644
--- a/providers/yandex/tests/system/yandex/example_yandexcloud.py
+++ b/providers/yandex/tests/system/yandex/example_yandexcloud.py
@@ -139,7 +139,7 @@ def create_cluster(
     if operation_result.response is None:
         return None
 
-    return operation_result.response.id
+    return operation_result.response.id  # type: ignore[attr-defined]
 
 
 @task
diff --git a/pyproject.toml b/pyproject.toml
index c19371e6464..d90935b468b 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -376,7 +376,7 @@ packages = []
     "apache-airflow-providers-weaviate>=3.0.0"
 ]
 "yandex" = [
-    "apache-airflow-providers-yandex>=4.0.0; python_version !=\"3.13\""
+    "apache-airflow-providers-yandex>=4.0.0"
 ]
 "ydb" = [
     "apache-airflow-providers-ydb>=1.4.0; python_version !=\"3.13\""
@@ -481,7 +481,7 @@ packages = []
     "apache-airflow-providers-trino>=5.8.1",
     "apache-airflow-providers-vertica>=3.9.1",
     "apache-airflow-providers-weaviate>=3.0.0",
-    "apache-airflow-providers-yandex>=4.0.0; python_version !=\"3.13\"",
+    "apache-airflow-providers-yandex>=4.0.0",
     "apache-airflow-providers-ydb>=1.4.0; python_version !=\"3.13\"",
     "apache-airflow-providers-zendesk>=4.9.0",
 ]

Reply via email to