ITADN

Numpy v1 compatibility broken on main with `DimArray`

#727OpenJamesWrigley 创建于 2025-11-30
bug
J
JamesWrigleycommented
**Affects:** PythonCall **Describe the bug** `ArrayValue.__array__()` now supports the `copy` argument and defaults to `copy=None`, but this is not supported on numpy v1 and breaks when using a `DimArray` from DimensionalData.jl: ```julia # Works @pyeval (x=rand(10), np) => "np.asarray(x)" # Fails @pyeval (x=rand(X(10)), np) => "np.asarray(x)" Python: ValueError: NoneType copy mode not allowed. Python stacktrace: [1] __array__ @ /path/to/julia-depot/packages/PythonCall/syXxf/src/JlWrap/array.jl:371 [2] <module> @ In[44]:1:1 ``` Not sure why it only breaks with `DimArray` but works with `Array`. **Your system** Please provide detailed information about your system: - Linux - Julia 1.12.2, PythonCall `main`, Python 3.11.13, Numpy 1.26.4.
3 条评论