[Python-3000] PEP 3123 (Was: PEP Parade)

"Martin v. Löwis" martin at v.loewis.de
Sun May 13 16:30:00 CEST 2007

>  S  3123  Making PyObject_HEAD conform to standard C   von Löwis
> I like it, but who's going to make the changes? Once those chnges have
> been made, will it still be reasonable to expect to merge C code from
> the (2.6) trunk into the 3.0 branch?

I just created bugs.python.org/1718153, which implements this PEP.

I had to add a number of additional macros (Py_Refcnt, Py_Size,
PyVarObject_HEAD_INIT); using these macros throughout is the bulk
of the change.

If the macros are backported to 2.x (omitting the "hard" changes
to PyObject itself), then the code base can stay the same between
2.x and 3.x (of course, backporting changes from 2.6 to 2.5 might
become harder, as the chances for conflicts increase).

As for statistics: there are ca. 580 uses of Py_Type in the code,
410 of Py_Size, and 20 of Py_Refcnt.

How should I proceed? The next natural step would be to change
2.6, and then wait until those changes get merged into 3k.


More information about the Python-3000 mailing list