Expected Behavior
Dependencies installed by pip based on the pyproject.toml are suitable for use with TIGRE.
After following the install instructions and completing a successful pip install . in a conda environment example and demos should be able to be run.
Actual Behavior
An error is seen when running the example.py or any of the demos that uses _Ax. That error being:
AttributeError: module 'numpy' has no attribute 'NPY_OWNDATA'
The reason seems to be that there is no upper limit on the numpy version in the pyproject.toml, and NPY_OWNDATA (which has been deprecated since numpy 1.7) has been removed as of 2.3.0. As the current version of numpy being installed via pip is 2.3.2.
The working name for the macro is NPY_ARRAY_OWNDATA. A find and replace to swap to that name fixes the problem while using numpy >= 2.3.0. But I'm not sure if additional work would be needed to fix it in a manner that is backwards compatible with numpy>=1.20.0
Alternatively setting a maximum version for numpy of <2.3.0 would work as well.
Code to reproduce the problem (If applicable)
- Pull the repository
- Create a new conda environment
pip install . in that environment (verify numpy version installed is 2.3 or greater, in case you have something cached somewhere that is resulting in a lower version being used)
- attempt to run a demo, for example
d14_Offsets.py
Specifications
- MATLAB/python version: Python 3.11
- OS: Windows 10
- CUDA version: 12.x