Message74801
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 |
|
Date |
User |
Action |
Args |
2008-10-15 11:16:16 | schiotz | set | recipients:
+ schiotz, georg.brandl |
2008-10-15 11:16:16 | schiotz | set | messageid: <1224069376.75.0.412282464499.issue4129@psf.upfronthosting.co.za> |
2008-10-15 11:16:16 | schiotz | link | issue4129 messages |
2008-10-15 11:16:15 | schiotz | create | |
|