With the numpy nightly builds for upcoming numpy 2.0 Aesara fails to import. Looks like it might be an easy fix though from the suggestion in the error message.
>>> import aesara
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/oscar/.pyenv/versions/sympy-3.11.git/lib/python3.11/site-packages/aesara/__init__.py", line 120, in <module>
from aesara import scalar, tensor
File "/home/oscar/.pyenv/versions/sympy-3.11.git/lib/python3.11/site-packages/aesara/tensor/__init__.py", line 105, in <module>
from aesara.tensor import sharedvar # noqa
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/oscar/.pyenv/versions/sympy-3.11.git/lib/python3.11/site-packages/aesara/tensor/sharedvar.py", line 8, in <module>
from aesara.tensor.type import TensorType
File "/home/oscar/.pyenv/versions/sympy-3.11.git/lib/python3.11/site-packages/aesara/tensor/type.py", line 787, in <module>
cscalar = TensorType("complex64", ())
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/oscar/.pyenv/versions/sympy-3.11.git/lib/python3.11/site-packages/aesara/tensor/type.py", line 104, in __init__
if np.obj2sctype(dtype) is None:
^^^^^^^^^^^^^
File "/home/oscar/.pyenv/versions/sympy-3.11.git/lib/python3.11/site-packages/numpy/__init__.py", line 396, in __getattr__
raise AttributeError(
AttributeError: `np.obj2sctype` was removed in the NumPy 2.0 release. Use `np.dtype(obj).type` instead.
Description of your problem or feature request
I found this while investigating https://github.com/sympy/sympy/issues/26094.
With the numpy nightly builds for upcoming numpy 2.0 Aesara fails to import. Looks like it might be an easy fix though from the suggestion in the error message.
The nightly build can be installed with:
Demonstration: