This is an automated email from the ASF dual-hosted git repository.
alenka pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/arrow.git
The following commit(s) were added to refs/heads/main by this push:
new 940592b35d GH-47370: [Python] Require Cython 3.1 (#47396)
940592b35d is described below
commit 940592b35dc934ec60eb3c448ddd37e7a0311742
Author: Nic Crane <[email protected]>
AuthorDate: Tue Sep 2 08:36:57 2025 +0100
GH-47370: [Python] Require Cython 3.1 (#47396)
### Rationale for this change
Upgrading Cython to version 3.1
### What changes are included in this PR?
Replace all mentions of earlier versions with 3.1
### Are these changes tested?
Nah but I'll run CI
### Are there any user-facing changes?
Only if they're using Cython < 3.1
* GitHub Issue: #47370
Authored-by: Nic Crane <[email protected]>
Signed-off-by: AlenkaF <[email protected]>
---
.github/workflows/dev.yml | 2 +-
ci/conda_env_python.txt | 2 +-
python/pyproject.toml | 2 +-
python/requirements-build.txt | 2 +-
python/requirements-wheel-build.txt | 2 +-
python/setup.py | 4 ++--
6 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/.github/workflows/dev.yml b/.github/workflows/dev.yml
index 0627e4e291..51662e1500 100644
--- a/.github/workflows/dev.yml
+++ b/.github/workflows/dev.yml
@@ -105,7 +105,7 @@ jobs:
shell: bash
run: |
gem install test-unit
- pip install "cython>=3" setuptools pytest requests setuptools-scm
+ pip install "cython>=3.1" setuptools pytest requests setuptools-scm
- name: Run Release Test
shell: bash
run: |
diff --git a/ci/conda_env_python.txt b/ci/conda_env_python.txt
index 9a48f26b79..4e3fd9f2de 100644
--- a/ci/conda_env_python.txt
+++ b/ci/conda_env_python.txt
@@ -20,7 +20,7 @@
# Not a direct dependency of s3fs, but needed for our s3fs fixture
boto3
cffi
-cython>=3
+cython>=3.1
cloudpickle
fsspec
hypothesis
diff --git a/python/pyproject.toml b/python/pyproject.toml
index 0bc8db8c79..781e2e5028 100644
--- a/python/pyproject.toml
+++ b/python/pyproject.toml
@@ -17,7 +17,7 @@
[build-system]
requires = [
- "cython >= 3",
+ "cython >= 3.1",
# Starting with NumPy 1.25, NumPy is (by default) as far back compatible
# as oldest-support-numpy was (customizable with a NPY_TARGET_VERSION
# define). For older Python versions (where NumPy 1.25 is not yet
available)
diff --git a/python/requirements-build.txt b/python/requirements-build.txt
index 00b523ee52..088aaac86b 100644
--- a/python/requirements-build.txt
+++ b/python/requirements-build.txt
@@ -1,4 +1,4 @@
-cython>=3
+cython>=3.1
oldest-supported-numpy>=0.14; python_version<'3.9'
numpy>=1.25; python_version>='3.9'
setuptools_scm>=8
diff --git a/python/requirements-wheel-build.txt
b/python/requirements-wheel-build.txt
index 38e59ce45a..334d285b85 100644
--- a/python/requirements-wheel-build.txt
+++ b/python/requirements-wheel-build.txt
@@ -1,4 +1,4 @@
-cython>=3
+cython>=3.1
oldest-supported-numpy>=0.14; python_version<'3.9'
numpy>=2.0.0; python_version>='3.9'
setuptools_scm
diff --git a/python/setup.py b/python/setup.py
index 88119e2d2a..b6fea83eb0 100755
--- a/python/setup.py
+++ b/python/setup.py
@@ -48,9 +48,9 @@ is_emscripten = (
)
-if Cython.__version__ < '3':
+if Cython.__version__ < '3.1':
raise Exception(
- 'Please update your Cython version. Supported Cython >= 3')
+ 'Please update your Cython version. Supported Cython >= 3.1')
setup_dir = os.path.abspath(os.path.dirname(__file__))