[PyQt] SIP and PyPy
Matti Picus
matti.picus at gmail.com
Thu Oct 20 20:37:01 BST 2016
I am a PyPy dev, working on making our C-API layer compatible with CPython.
I spent some time with SIP today, trying to make the wxPython bindings work.
I am using the latest HEAD version of PyPy and, AFAICT the 4.8.1 version
of SIP.
I have a problem with the tp_alloc functions in siplib.c, specifically
sipEnumType_alloc and sipWrapperType_alloc.
According to the C-API documentation,
https://docs.python.org/2/c-api/typeobj.html#c.PyTypeObject.tp_alloc,
"Do not use this function to do any other instance initialization, not
even to allocate additional memory; that should be done by tp_new" but
these functions do much more.
Presently PyPy does not allow overriding the tp_alloc function at all,
so from my perspective all the more reason to be pedantic about not
doing too much in tp_alloc :).
My questions are: how can I work with the SIP people to make SIP work
with PyPy (is there a test suite, continuous build or something like
that), and more specifically would you be willing to accept a patch to
move the initialization code from tp_alloc to tp_init? What are the
implications for other users of SIP?
Thanks
Matti
|| <https://docs.python.org/2/c-api/typeobj.html#c.PyTypeObject.tp_new>
More information about the PyQt
mailing list