I've narrowed this down to a change between 1.0.4 and 1.1.0. Valgrind (of
v1.3.0) shows the following result. The change was in setArrayFromSequence
where PyArray_EnsureArray gets invoked in v1.1.0 where it did not in v1.0.4.
==10132== 4,474,768 (3,197,200 direct, 1,277,568 indirect) bytes in 39
This simple example causes a massive leak in v1.3.0 which didn't exist in
v1.0.1. What am I doing wrong? If I replace
arr = [Array((2,2)), Array((2,2))]
with
arr = [numpy.ndarray((2,2,)), numpy.ndarray((2,2))]
then I don't have the leak
import numpy
import gc
class Array(numpy.ndarray):
d