On Mon, Sep 24, 2012 at 3:49 PM, Nathaniel Smith <[email protected]> wrote: > On Mon, Sep 24, 2012 at 10:47 PM, Charles R Harris > <[email protected]> wrote: >> >> >> On Mon, Sep 24, 2012 at 2:25 PM, Frédéric Bastien <[email protected]> wrote: >>> >>> Hi, >>> >>> I tested this new beta on Theano and discovered an interface change >>> that was not there in the beta 1. >>> >>> New behavior: >>> numpy.ndindex().next() >>> (0,) >>> >>> Old behavior: >>> numpy.ndindex().next() >>> () >>> >>> This break some Theano code that look like this: >>> >>> import numpy >>> shape=() >>> out_shape=[12] >>> random_state=numpy.random.RandomState() >>> >>> out = numpy.zeros(out_shape, int) >>> for i in numpy.ndindex(*shape): >>> out[i] = random_state.permutation(5) >>> >>> >>> I suppose this is an regression as the only mention of ndindex in the >>> first email of this change is that it is faster. >>> >> >> I think this problem has been brought up on the list. It is interesting that >> it turned up after the first beta. Could you do a bisection to discover >> which commit is responsible? > > No need, the problem is already known. It was introduced by that > ndindex speed up patch, PR #393, which was backported into the first > beta as well. There's a follow-up patch in PR #445 that fixes both of > these issues, though it also exposes some more fundamental issues with > the nditer API, so there's lots of discussion there about if we want > some more changes... this is a good summary: > https://github.com/numpy/numpy/pull/445#issuecomment-8740982 > > For 1.7 purposes though the bottom line is that we already have > multiple acceptable solutions, so both the issues reported here should > definitely be fixed.
Should we just remove (revert) this PR #393 patch from the release branch? It shouldn't have been there in the first place, the only reason I included it is because other patches depended on it and I would have to fix collisions, and we thought it would be harmless to just include it. Which turned out to be a mistake, for which I apologize. That way we'll feel confident that the branch works, and we can get the right solution into master and test it there. So I am actually convinced I should simply revert this patch in the release branch. Let me know what you think. Ondrej _______________________________________________ NumPy-Discussion mailing list [email protected] http://mail.scipy.org/mailman/listinfo/numpy-discussion
