RFH: python-sip runtime version checks
See #647210 for the most recent instance of these checks causing 
problems.  python-sip will raise a RuntimeError if the upstream version 
of python-qt4 (specifically PyQt4.QtCore) used at runtime is different 
than the one the package was built with.
RuntimeError: the PyQt4.QtCore module is version 1 but the 
PyQt4.Qwt5.Qwt module requires version -1
This check is done in the section starting at line 1258 of 
siplib/siplib.c.in in the sip4 version currently in unstable (4.13) if 
you're interested to see the source of the trouble.
I've put a bandage on the immediate issue by uploading an update 
python-qt4 with breaks added and binNMUing the relevant packages 
(pykde4, pyqwt5, and qscintilla2), but I think it would be good if we 
had a better solution than this in the long run since it's going to 
happen again every time there is a new python-qt4 upstream version.
There is already a dh_sip, but it only examines the sip API version, not 
the PyQt4 version.  I was thinking it might be extended to cover this 
case and include expanding ${sip:Depends} to generate a versioned 
depends on python-qt4 >= upstream:Version, python-qt4 << 
upstream:Version +1.  It might also have a ${sip:Breaks} that would 
automatically update the relevant Breaks when python-qt4 is updated to a 
new upstream version.
I'm traveling this week, so it might just be the jetlag talking, but 
that seems reasonable.  Comments?  Anyone willing to help if it does 
make sense (my Perl foo is non-existent)?
Scott K
Reply to: