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