[PyQt] qt_handleMouseEvent - public API?
Florian Bruhin
me at the-compiler.org
Tue Mar 29 16:32:55 BST 2016
* Dmitry Shachnev <mitya57 at ubuntu.com> [2016-03-29 16:59:03 +0200]:
> Hi Florian,
>
> On Tue, Mar 29, 2016 at 09:01:51AM +0200, Florian Bruhin wrote:
> > on Archlinux, PyQt did break after updating Qt to 5.6:
> >
> > $ python -c "from PyQt5 import QtTest"
> > Traceback (most recent call last):
> > File "<string>", line 1, in <module>
> > ImportError: /usr/lib/python3.5/site-packages/PyQt5/QtTest.so: undefined symbol:
> > _Z19qt_handleMouseEventP7QWindowRK7QPointFS3_6QFlagsIN2Qt11MouseButtonEES4_INS5_16KeyboardModifierEE
> >
> > I'm not sure what happened here: Does qt_handleMouseEvent count as
> > public API (it has a Q_GUI_EXPORT and is in a public header), and this
> > was an unintentional ABI break from Qt?
>
> To me it looks like an ABI break in Qt (and yes, that function matches the
> criteria for public API). I think you should send a mail to Qt's development
> mailing list, maybe it's not yet late to get it fixed in Qt 5.6.1.
>
> PyQt5 is probably affected via QTest::mouseEvent, which is defined in an .h
> file, and thus the compiler has the right to inline it, which results in
> linking to that missing symbol.
Seems like it was pointed out and nobody did really care - instead
QtTest was declared not-necessarily ABI-compatible:
https://www.mail-archive.com/development@qt-project.org/msg23659.html
https://www.mail-archive.com/development@qt-project.org/msg23663.html
I opened a Qt bug now: https://bugreports.qt.io/browse/QTBUG-52205
Florian
--
http://www.the-compiler.org | me at the-compiler.org (Mail/XMPP)
GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
I'm running a crowdfunding to work on my FOSS-project full-time:
http://igg.me/at/qutebrowser
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <https://www.riverbankcomputing.com/pipermail/pyqt/attachments/20160329/a76c50e3/attachment.sig>
More information about the PyQt
mailing list