Add GraalPy 3.13 (25.3) to the testing matrix (#6166)
* Add GraalPy 3.13 (25.3) to the testing matrix
* Update numpy version used by test on GraalPy
* Unmark fixed xfail
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 155dbd1..0aa06c1 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -54,6 +54,9 @@
python-version: 'graalpy-25.0'
cmake-args: -DCMAKE_CXX_STANDARD=20
- runs-on: ubuntu-latest
+ python-version: 'graalpy-25.3'
+ cmake-args: -DCMAKE_CXX_STANDARD=20
+ - runs-on: ubuntu-latest
python-version: '3.15'
cmake-args: -DCMAKE_CXX_STANDARD=20
- runs-on: macos-latest
@@ -113,6 +116,8 @@
python-version: 'pypy-3.11-v7.3.23'
- runs-on: macos-latest
python-version: 'graalpy-25.0'
+ - runs-on: macos-latest
+ python-version: 'graalpy-25.3'
- runs-on: windows-latest
python-version: '3.9'
diff --git a/tests/requirements.txt b/tests/requirements.txt
index e10fb40..1e94a56 100644
--- a/tests/requirements.txt
+++ b/tests/requirements.txt
@@ -5,7 +5,8 @@
numpy>=2.4.0; platform_python_implementation=="CPython" and python_version>="3.14" and python_version<"3.15"
numpy~=1.25.0; python_version=="3.9" and platform_python_implementation=="PyPy"
numpy~=2.2.0; python_version=="3.10" and platform_python_implementation=="PyPy"
-numpy~=2.2.0; platform_python_implementation=="GraalVM" and sys_platform=="linux"
+numpy~=2.2.0; python_version=="3.12" and platform_python_implementation=="GraalVM" and sys_platform=="linux"
+numpy~=2.4.4; python_version=="3.13" and platform_python_implementation=="GraalVM" and sys_platform=="linux"
numpy~=1.21.5; platform_python_implementation=="CPython" and python_version=="3.9"
numpy~=1.22.2; platform_python_implementation=="CPython" and python_version=="3.10"
numpy~=1.26.0; platform_python_implementation=="CPython" and python_version>="3.11" and python_version<"3.13" and platform_machine!="ARM64"
diff --git a/tests/test_exceptions.py b/tests/test_exceptions.py
index aeea5d8..b0135d0 100644
--- a/tests/test_exceptions.py
+++ b/tests/test_exceptions.py
@@ -205,7 +205,7 @@
assert msg(excinfo.value) == "[PythonMyException7]: abc"
-@pytest.mark.xfail("env.GRAALPY", reason="TODO should get fixed on GraalPy side")
+@pytest.mark.xfail("env.GRAALPY and sys.version_info < (3, 13)")
def test_nested_throws(capture):
"""Tests nested (e.g. C++ -> Python -> C++) exception handling"""