Documentation reads the following under "Limitations":
dtypes are typed correctly, so the following code will in fact cause type checkers to issue and error message:
import numpy as np
from numdantic import NDArray, Shape
# This does cause a type checking error
x: NDArray[Shape[int, int], np.float32] = np.array([[1, 2], [3, 4]], dtype=np.int32)
This is wrong. mypy does not issue an error and passes.
Documentation reads the following under "Limitations":
This is wrong.
mypy
does not issue an error and passes.