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

xushiyan pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/hudi-rs.git


The following commit(s) were added to refs/heads/main by this push:
     new d6d8fd8  feat: update python setup to support 3.13 (#361)
d6d8fd8 is described below

commit d6d8fd8419cb0112cd5083744f64632dffbe11b0
Author: Shiyan Xu <[email protected]>
AuthorDate: Fri Jun 27 00:02:17 2025 -0500

    feat: update python setup to support 3.13 (#361)
    
    Support 3.13 in CI and build.
---
 .github/workflows/ci.yml      | 6 +++---
 .github/workflows/release.yml | 6 +++---
 python/Cargo.toml             | 4 ++--
 python/pyproject.toml         | 7 ++++---
 4 files changed, 12 insertions(+), 11 deletions(-)

diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index e9880d8..27360a1 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -83,12 +83,12 @@ jobs:
       matrix:
         # TODO: add windows
         os: [ ubuntu-24.04, ubuntu-22.04-arm, macos-15 ]
-        python-version: [ '3.9', '3.12' ]
+        python-version: [ '3.9', '3.13' ]
         exclude:
           - os: ubuntu-24.04
             python-version: '3.9'
           - os: ubuntu-22.04-arm
-            python-version: '3.12'
+            python-version: '3.13'
           - os: macos-15
             python-version: '3.9'
     runs-on: ${{ matrix.os }}
@@ -113,7 +113,7 @@ jobs:
           coverage xml --data-file=.coverage -o 
./cov-reports/cov-report-python-tests-${{ join(matrix.*, '-') }}.xml
       - name: Upload coverage report
         uses: actions/upload-artifact@v4
-        if: ${{ (matrix.os == 'ubuntu-24.04') && (matrix.python-version == 
'3.12') }}
+        if: ${{ (matrix.os == 'ubuntu-24.04') && (matrix.python-version == 
'3.13') }}
         with:
           name: cov-report-python-tests-${{ join(matrix.*, '-') }}
           path: ./cov-reports
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 516cf48..ffad4b5 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -73,7 +73,7 @@ jobs:
       - uses: actions/checkout@v4
       - uses: actions/setup-python@v5
         with:
-          python-version: '3.12'
+          python-version: '3.13'
 
       - name: Publish to pypi (without sdist)
         uses: PyO3/maturin-action@v1
@@ -93,7 +93,7 @@ jobs:
       - uses: actions/checkout@v4
       - uses: actions/setup-python@v5
         with:
-          python-version: '3.12'
+          python-version: '3.13'
 
       - name: Publish to pypi (without sdist)
         uses: PyO3/maturin-action@v1
@@ -113,7 +113,7 @@ jobs:
       - uses: actions/checkout@v4
       - uses: actions/setup-python@v5
         with:
-          python-version: '3.12'
+          python-version: '3.13'
 
       - name: Publish manylinux to pypi x86_64 (with sdist)
         uses: PyO3/maturin-action@v1
diff --git a/python/Cargo.toml b/python/Cargo.toml
index 9a89e3f..c67147f 100644
--- a/python/Cargo.toml
+++ b/python/Cargo.toml
@@ -23,7 +23,7 @@ license.workspace = true
 rust-version.workspace = true
 keywords.workspace = true
 readme.workspace = true
-description = "Native Python binding for Apache Hudi, based on hudi-rs."
+description = "Native Python binding for Apache Hudi, based on Hudi-rs."
 homepage.workspace = true
 repository = "https://github.com/apache/hudi-rs/tree/main/python/";
 
@@ -45,7 +45,7 @@ futures = { workspace = true }
 tokio = { workspace = true }
 
 [dependencies.pyo3]
-version = "~0.23.0"
+version = "~0.23"
 features = ["extension-module", "abi3", "abi3-py39"]
 
 [lints.rust]
diff --git a/python/pyproject.toml b/python/pyproject.toml
index 1efb2cd..32e2379 100644
--- a/python/pyproject.toml
+++ b/python/pyproject.toml
@@ -31,7 +31,8 @@ classifiers = [
     "Programming Language :: Python :: 3.9",
     "Programming Language :: Python :: 3.10",
     "Programming Language :: Python :: 3.11",
-    "Programming Language :: Python :: 3.12"
+    "Programming Language :: Python :: 3.12",
+    "Programming Language :: Python :: 3.13",
 ]
 dependencies = [
     "pyarrow>=11.0.0",
@@ -41,8 +42,8 @@ dependencies = [
 optional-dependencies = { devel = [
     "pytest==8.3.5",
     "coverage==7.8",
-    "ruff==0.11.7",
-    "mypy==1.15.0",
+    "ruff==0.12",
+    "mypy==1.15",
 ] }
 
 dynamic = ["version"]

Reply via email to