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: