<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Oct 1, 2013 at 7:25 AM, Nathaniel Smith <span dir="ltr"><<a href="mailto:njs@pobox.com" target="_blank">njs@pobox.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">On Tue, Oct 1, 2013 at 1:56 PM, Charles R Harris<br>
<<a href="mailto:charlesr.harris@gmail.com">charlesr.harris@gmail.com</a>> wrote:<br>
> On Tue, Oct 1, 2013 at 4:43 AM, Nathaniel Smith <<a href="mailto:njs@pobox.com">njs@pobox.com</a>> wrote:<br>
>><br>
>> On Mon, Sep 30, 2013 at 10:51 PM, Christoph Gohlke <<a href="mailto:cgohlke@uci.edu">cgohlke@uci.edu</a>><br>
>> wrote:<br>
>> > 2) Bottleneck 0.7.0<br>
>> ><br>
>> > <a href="https://github.com/kwgoodman/bottleneck/issues/71#issuecomment-25331701" target="_blank">https://github.com/kwgoodman/bottleneck/issues/71#issuecomment-25331701</a><br>
>><br>
>> I can't tell if these are real bugs in numpy, or tests checking that<br>
>> bottleneck is bug-for-bug compatible with old numpy and we just fixed<br>
>> some bugs, or what. It's clearly something to do with the<br>
>> nanarg{max,min} rewrite -- @charris, do you know what's going on here?<br>
>><br>
><br>
> Yes ;) The previous behaviour of nanarg for all-nan axis was to cast nan to<br>
> intp when the result was an array, and return nan when a scalar. The current<br>
> behaviour is to return the most negative value of intp as an error marker in<br>
> both cases and raise a warning. It is a change in behavior, but I think one<br>
> that needs to be made.<br>
<br>
</div></div>Ah, okay! I kind of lost track of the nanfunc changes by the end there.<br>
<br>
So for the bottleneck issue, it sounds like the problem is just that<br>
bottleneck is still emulating the old numpy behaviour in this corner<br>
case, which isn't really a problem. So we don't really need to worry<br>
about that, both behaviours are correct, just maybe out of sync.<br>
<br>
I'm a little dubious about this "make up some weird value that will<br>
*probably* blow up if people try to use it without checking, and also<br>
raise a warning" thing, wouldn't it make more sense to just raise an<br>
error? That's what exceptions are for? I guess I should have said<br>
something earlier though...<br>
<div class="HOEnZb"><div class="h5"><br></div></div></blockquote><div><br></div><div>I figure the blowup is safe, as we can't allocate arrays big enough that the minimum intp value would be a valid index. I considered raising an error, and if there is a consensus the behavior could be changed. Or we could add a keyword to determine the behavior.<br>
<br></div><div>Chuck<br></div></div></div></div>