This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author schiotz
Recipients georg.brandl, schiotz
Date 2008-10-15.11:16:14
SpamBayes Score 4.1786816e-08
Marked as misclassified No
Message-id <1224069376.75.0.412282464499.issue4129@psf.upfronthosting.co.za>
In-reply-to
Content
In general, the Python C/API manual is very careful to document when
changes have occurred in the API, this is really useful information when
writing portable extension modules to be used with different Python
versions.

However, there is a group of changes that are not documented.  In Python
2.5 the Py_ssize_t type was introduced, and a number of functions had
arguments changed from int to Py_ssize_t (a trivial change) or from int*
to Py_ssize_t*.  The latter is an incompatible change on 64-bit
platforms, as int and Py_ssize_t have different size, and this DOES
break extension modules on 64-bit platforms.  For example, the change in
int PySlice_GetIndices breaks the Scientific Python NetCDF module badly.

I suggest that a note is added to the documentation of all functions
taking a Py_ssize_t* argument stating that the type of the argument was
changed in Python 2.5.

Best regards

Jakob
History
Date User Action Args
2008-10-15 11:16:16schiotzsetrecipients: + schiotz, georg.brandl
2008-10-15 11:16:16schiotzsetmessageid: <1224069376.75.0.412282464499.issue4129@psf.upfronthosting.co.za>
2008-10-15 11:16:16schiotzlinkissue4129 messages
2008-10-15 11:16:15schiotzcreate