Thank you Charles for the corrections.

Cheers,
N.Maniteja

_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@scipy.org
http://mail.scipy.org/mailman/listinfo/numpy-discussion

On Thu, Jan 15, 2015 at 10:41 PM, Charles R Harris <
charlesr.har...@gmail.com> wrote:

>
>
> On Thu, Jan 15, 2015 at 9:44 AM, Maniteja Nandana <
> maniteja.modesty...@gmail.com> wrote:
>
>> Hello everyone,
>>
>> I just wanted to highlight the point made by Charles, it would be great
>> if he would clarify any mistakes in the points that I put forward.
>>
>> Quoting the documentation,
>>
>> In versions of NumPy prior to 1.7, this function always returned a 
>> new,independent array containing a copy of the values in the diagonal.
>>
>>     In NumPy 1.7 and 1.8, it continues to return a copy of the diagonal,but 
>> depending on this fact is deprecated. Writing to the resulting array 
>> continues to work as it used to, but a FutureWarning is issued.
>>
>>     In NumPy 1.9 it returns a read-only view on the original array. 
>> Attempting to write to the resulting array will produce an error.
>>
>>     In NumPy 1.10, it will return a read/write view, Writing to the returned 
>> array will alter your original array.
>>
>> Though the expected behaviour has its pros and cons,the points put forward 
>> are :
>>
>>
>>    1. revert the changes so that *PyArray_Diagonal *returns a *copy.*
>>    2. introduce new API function *PyArray_Diagonal2, *which has a *copy 
>> *argument, so that copy or view can be returned.
>>    3. if a *view* is to be returned, its *write-ability *depends on whether 
>> the *input* is writeable.
>>    4. implement *PyArray_Diagonal *in terms of the new function, thought the 
>> default value of *copy *is unsure.
>>
>> copy=True
>
>>
>>    1. Raise a *FutureWarning*, when trying to write to the result.
>>
>> Old function should behave exactly as before, returning a writable copy.
>
>>
>>    1. add *copy *argument to the *diagonal *function and method, updating 
>> the function in *methods.c *and *fromnumeric.py, *probably in other places 
>> also.
>>    2. Also update the release notes and documentation.
>>
>> I would love to do the PR once a decision is reached.
>>
>>
> Chuck
>
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion@scipy.org
> http://mail.scipy.org/mailman/listinfo/numpy-discussion
>
>
_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@scipy.org
http://mail.scipy.org/mailman/listinfo/numpy-discussion

Reply via email to