[Python-3000] Last minute C API fixes

M.-A. Lemburg mal at egenix.com
Thu Aug 7 00:40:17 CEST 2008

On 2008-06-11 16:32, M.-A. Lemburg wrote:
> There are two things I'd like to get in to 3.0:
>  * .transform()/.untransform() methods (this is mostly done, just need
>    to add the methods to PyUnicode, PyBytes and PyByteArray)
>  * cleanup of the PyUnicode_AsString() and PyUnicode_AsStringAndSize()
>    C APIs (these APIs don't fit into the naming scheme used in the
>    Unicode API and have a few other issues as well, see issue 2799;
>    at the very least they should be made interpreter internal, ie.
>    rename them to _PyUnicode_AsString() and _PyUnicode_AsStringAndSize()
>    to prevent their use in extensions)

As it turned out, I haven't had time to look into these things.

The .transform()/.untransform() can wait until 3.1. The codecs module
allows doing same-type conversion, so that can be used as work-around.

Regarding the C API, I would really not like extensions to start using
these APIs since they expose internals that should be exposed in this
direct way (PyUnicode_AsString()) and/or behave differently than the
corresponding PyString API (PyUnicode_AsStringAndSize()).

Since I don't have time to work on the C API, I'd like to do a
simple name change to make them private to the interpreter.

Is it too late for that ?

Marc-Andre Lemburg

Professional Python Services directly from the Source  (#1, Aug 07 2008)
 >>> Python/Zope Consulting and Support ...        http://www.egenix.com/
 >>> mxODBC.Zope.Database.Adapter ...             http://zope.egenix.com/
 >>> mxODBC, mxDateTime, mxTextTools ...        http://python.egenix.com/

:::: Try mxODBC.Zope.DA for Windows,Linux,Solaris,MacOSX for free ! ::::

    eGenix.com Software, Skills and Services GmbH  Pastor-Loeh-Str.48
     D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg
            Registered at Amtsgericht Duesseldorf: HRB 46611

More information about the Python-3000 mailing list