(original) (raw)



2011/11/22 Victor Stinner <victor.stinner@haypocalc.com>

Hi,



In Python 3.2, PyUnicode_Resize() expects a number of Py_UNICODE units,

whereas Python 3.3 expects a number of characters.



It is tricky to convert a number of Py_UNICODE units to a number of

characters, so it is diffcult to provide a backward compatibility

PyUnicode_Resize() function taking a number of Py_UNICODE units in Python 3.3.



Should we rename PyUnicode_Resize() in Python 3.3 to avoid surprising bugs?



The issue only concerns Windows with non-BMP characters, so a very rare use

case.



The easiest solution is to do nothing in Python 3.3: the API changed, but it

doesn't really matter. Developers just have to be careful on this particular

issue (which is not well documented today).

+1. A note in the "Porting C code" section of whatsnew/3.3 should be enough.

--
Amaury Forgeot d'Arc