[Stackless] [PySide] PySide violates Python API - PyQt does not!

Kristján Valur Jónsson kristjan at ccpgames.com
Mon Dec 10 12:41:37 CET 2012


That was also the purpose of a discarded patch I made, to make the stackless headers compatible with projects that extend PyTypeObject.
It is basically somewhat messy and needs the delta in object.h to be much larger than necessary.   My solution was to copy the PyTypeObject into two similar structures, one for external linkage, another for internal.  Not nice at all.

K

> -----Original Message-----
> From: stackless-bounces at stackless.com [mailto:stackless-
> bounces at stackless.com] On Behalf Of Christian Tismer
> Sent: 9. desember 2012 19:08
> To: John Ehresman
> Cc: pyside at qt-project.org; stackless at stackless.com
> Subject: Re: [Stackless] [PySide] PySide violates Python API - PyQt does not!
> 
> On 09.12.12 19:22, John Ehresman wrote:
> > On 12/8/12 1:36 PM, Christian Tismer wrote:
> >> It is pretty likely that there is a problem with extra data fields
> >> behind the type object structure, which is used by both pyside and
> stackless.
> >>
> >> from basewrapper.h :
> >>
> >>> /// PyTypeObject extended with C++ multiple inheritance information.
> >>> struct LIBSHIBOKEN_API SbkObjectType {
> >>>      PyHeapTypeObject super;
> >>>      SbkObjectTypePrivate* d;
> >>> };
> > If this is the case, shouldn't recompiling pyside & shiboken for
> > stackless resolve the issue?
> >
> 
> Yes, this is true, and I tried this.
> Unfortunately, PySide does not build with Stackless Python, due to the
> different definition of PyHeapTypeObject.
> 
> I saw thar PyQT had a similar problem, and it has a small patch.
> 
> PySide is different in that it requires to access to
> 
>      PyTypeObject ht_type;
> 
> which is absent in stackless.
> 
> Now I'm undecided whether to change shiboken or stackless.?
> Maybe I will patch shiboken for the moment, to see if it solves the problem.
> 
> Thanks for motivating me - chris
> 
> --
> Christian Tismer             :^)   <mailto:tismer at stackless.com>
> Software Consulting          :     Have a break! Take a ride on Python's
> Karl-Liebknecht-Str. 121     :    *Starship* http://starship.python.net/
> 14482 Potsdam                :     PGP key -> http://pgp.uni-mainz.de
> phone +49 173 24 18 776  fax +49 (30) 700143-0023
> PGP 0x57F3BF04       9064 F4E1 D754 C2FF 1619  305B C09C 5A3B 57F3 BF04
>        whom do you want to sponsor today?   http://www.stackless.com/
> 
> 
> _______________________________________________
> Stackless mailing list
> Stackless at stackless.com
> http://www.stackless.com/mailman/listinfo/stackless





More information about the Stackless mailing list