KDE 4 (was: [PyKDE] PyQt 4 on openSUSE)

Phil Thompson phil at riverbankcomputing.co.uk
Sat Sep 9 15:36:09 BST 2006


On Friday 08 September 2006 8:46 pm, Simon Edwards wrote:
> On Friday 08 September 2006 02:48, Jim Bublitz wrote:
> > I'm completely in favor of synching KDE and PyKDE
> >
> :-)
> :
> > Seriously - 2 or 3 maintainers splitting up module responsibilities would
> > probably do it with decent communication and source control. I'm
> > perfectly willing to provide help. I don't wanna be the boss though - I'm
> > too unreliable.
>
> The good thing about PyKDE is that once the base code is in place, it
> doesn't take much coordination to keep it maintained. A small group of
> people keeping an eye on PyKDE and the especially on developments in
> kdelibs around freeze time, should be sufficent. Issues, breakage, bugs or
> new APIs can be reported and coordinated on the mailing list (and via
> bugs.kde.org).
>
> > It's unlikely that you can maintain a system which a) stays in sync with
> > KDE and b) stays at the cutting edge of sip/PyQt, but I don't see why
> > that would be critical - certainly the distributors are always a few revs
> > behind, and people who need the cutting edge can still roll their own,
> > especially if PyKDE is up-to-date with KDE.. There has always been a
> > stable configuration that's usable, if not completely up-to-date with the
> > latest sip changes.
>
> What we want to be able to tell users and 3rd party developers is that a
> KDE 4.0 application written in Python will work fine on any 4.0+ version of
> KDE, just like how it is with C++ apps. By just work fine, I mean that
> binary packages containing SIP wrapped C++ classes and normal Python code
> should stay working between versions. This seems to require that SIP and
> libsip maintain BC during the KDE 4 series. I'd like to see mixed language
> development supported. Is this realistic? or should no BC guarantees be
> given? Phil, what are your thoughts about SIP binary compatibiity in the
> future?

I think SIP and PyKDE binary compatibility are irrelevant because Python 2.m 
may not be binary compatible with Python 2.n. Any benefits of KDE requiring 
compatibility are immediately lost so I can't see the point in imposing the 
requirement in the first place.

To answer the question... The SIP API has versioning built in. Binaries are 
compatible (for the same version of Python) so long as the major number 
doesn't change. It hasn't changed for 2 years - since SIP v4 was released in 
fact. I suspect that Qt v4.2 will require some SIP changes (which will go 
into SIP v4.5) but I don't expect these to be incompatible.

You mentioned libsip (ie. SIP v3) - I didn't realise KDE was so out of date. 
Unless you move to SIP v4 you are going to have problems running PyKDE3 and 
PyKDE4 side by side.

Phil




More information about the PyQt mailing list