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"]