IMPORTANT 2.5 API changes for C Extension Modules

konrad.hinsen at laposte.net konrad.hinsen at laposte.net
Thu Apr 6 06:46:56 EDT 2006


On 05.04.2006, at 08:44, nnorwitz at gmail.com wrote:

> Python 2.5 alpha 1 is in the process of being released later today.
> There are important changes that are in 2.5 to support 64-bit systems.
> These changes can cause Python to crash if your module is not upgraded
> to support the changes.  Python was changed internally to use 64-bit
> values on 64-bit machines for indices.  If you've got a machine with
> more than 16 GB of RAM, it would be great if you can test Python with
> large (> 2GB) strings and other sequences.
>
> For more details about the Python 2.5 schedule:
> http://www.python.org/dev/peps/pep-0356/
> For more details about the 64-bit change:
> http://www.python.org/dev/peps/pep-0353/
> How to fix your module:
> http://www.python.org/dev/peps/pep-0353/#conversion-guidelines

Thanks for the information!

One question: Is there a safe way to keep extension modules backward- 
compatible with older Python versions? I am thinking of something like

	#ifndef PY_SSIZE_T_DEFINED
	typedef Py_ssize_t int;
	#endif

assuming that Python 2.5 defines PY_SSIZE_T_DEFINED.

Konrad.
--
------------------------------------------------------------------------ 
-------
Konrad Hinsen
Laboratoire Leon Brillouin (CEA-CNRS), CEA Saclay,
91191 Gif-sur-Yvette Cedex, France
Tel.: +33-1 69 08 79 25
Fax: +33-1 69 08 82 61
E-Mail: konrad.hinsen at cea.fr
------------------------------------------------------------------------ 
-------





More information about the Python-list mailing list