From e1a8686b6e4e8f667847d7dfd56f5ffaac2ebd06 Mon Sep 17 00:00:00 2001 From: Emanuel Pituch <32016786+epituch@users.noreply.github.com> Date: Tue, 15 Sep 2026 17:28:10 -0700 Subject: [PATCH] fix: support NumPy 2.5 with current Numba --- pyproject.toml | 12 ++++++++++-- src/nmag/vtk_export.py | 5 +++-- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index f8ca0b3..c8388b0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -12,7 +12,15 @@ requires-python = ">=3.10" classifiers = [ "Programming Language :: Python :: 3", "Operating System :: OS Independent" ] -dependencies = ["pint", "numpy", "scipy", "numba", "tabulate", "meshio", "h5py"] +dependencies = [ + "pint", + "numpy>=1.22,<2.6", + "scipy", + "numba>=0.67", + "tabulate", + "meshio", + "h5py", +] [project.scripts] nmeshimport = "nmesh.cli.nmeshimport:main" @@ -25,7 +33,7 @@ docs = [ "mkdocs==1.6.1", "mkdocs-material==9.7.7", "mkdocstrings==1.0.6", - "mkdocstrings-python==2.0.5", + "mkdocstrings-python==2.0.8", ] dev = [ "maturin>=1.14,<2", diff --git a/src/nmag/vtk_export.py b/src/nmag/vtk_export.py index f0738bd..ddb0e74 100644 --- a/src/nmag/vtk_export.py +++ b/src/nmag/vtk_export.py @@ -8,6 +8,7 @@ import h5py import meshio import numpy as np +from numpy.typing import ArrayLike import nmesh @@ -77,7 +78,7 @@ def export_vtk( if np.any(simplices < 0) or np.any(simplices >= len(points)): raise ValueError("Mesh cell indices are outside the snapshot point range.") - point_data: dict[str, np.ndarray] = {} + point_data: dict[str, ArrayLike] = {} field_group = handle.get("fields") if not isinstance(field_group, h5py.Group): raise ValueError("Snapshot is missing the /fields group.") @@ -97,7 +98,7 @@ def export_vtk( ) point_data[field_name] = np.asarray(values, dtype=float) - cell_data: dict[str, list[np.ndarray]] = {} + cell_data: dict[str, list[ArrayLike]] = {} if regions is not None: cell_data["region"] = [regions] mesh = meshio.Mesh(