On Wed, Jun 30, 2010 at 10:57 AM, Lisandro Dalcin <dalcinl@gmail.com> wrote:
On 30 June 2010 02:48, Charles R Harris <charlesr.harris@gmail.com> wrote:
>
>
> On Tue, Jun 29, 2010 at 8:21 PM, Lisandro Dalcin <dalcinl@gmail.com> wrote:
>>
>> Do we really need this for NumPy 2? What about using the old PyCObject
>> for all Py 2.x versions? If this is not done, perhaps NumPy 2 on top
>> of Py 2.x should still accept the __array_struct__ being a PyCObject?
>>
>> As reference, Cython still uses PyCObject for Py<3.1
>> http://hg.cython.org/cython-devel/rev/8a58f1544bd8#l1.33 .
>>
>
> Blame the Python 2.7 developers, those suckers deprecated the PyCObject.
>

Oh! Sorry! Now I realize that!

> Grrr... I didn't see the point, myself, I'm tempted to deprecate 2.7 just to
> get even. There are some routines in the numpy/core/src includes that you
> might want to copy, they will allow you to use a common interface for
> PyCObject and PyCapsule if you need to do that.
>

I've already fixed my code for PyCapsule. What's not clear to me is
how to build (i.e, use the old cobject or the new capsules)
__array_struct__ across NumPy and Python versions combinations. Will
NumPy 1.x series ever support Python 2.7? In such case, should I use
cobjects or capsules?


We do support 2.7, but with PyCapsule. You might want to take a look at f2py also, as it also uses PyCapsule for Python >= 2.7.

<snip>

Chuck