[PyQt] ANN: PyQt5 Snapshots Available

Phil Thompson phil at riverbankcomputing.com
Mon May 6 15:49:25 BST 2013


The first PyQt5 snapshots are now available. You will need the current SIP
snapshot. PyQt5 can be installed alongside PyQt4.

I welcome any suggestions for additional changes - as PyQt5 is not
intended to be compatible with PyQt4 it is an opportunity to fix and
improve things.

Current changes from PyQt4:

- Versions of Python earlier than v2.6 are not supported.

- PyQt4 supported a number of different API versions (QString, QVariant
etc.). PyQt5 only implements v2 of those APIs for all versions of Python.

- In PyQt4, QSet was implemented as a list in Python v2 and a set in
Python v3. In PyQt5 QSet is always implemented as a set.

- The getOpenFileNameAndFilter(), getOpenFileNamesAndFilter() and
getSaveFileNameAndFilter() methods of PyQt4's QFileDialog have now been
renamed getOpenFileName(), getOpenFileNames() and getSaveFileName()
respectively in PyQt5. PyQt4's implementations of getOpenFileName(),
getOpenFileNames() and getSaveFileName() are not supported in PyQt5.

- Support for all Qt4 features that are deprecated in Qt5 has been
removed.

- sip.setdestroyonexit(0) is called automatically.

- The GIL is only released when it is known to be needed.  PyQt4 always
released the GIL when calling Qt.

- The QtWidgets, QtWebKitWidgets and QtPrintSupport modules have been
added.

- pyuic5 does not support the --pyqt3-wrapper flag of pyuic4.

- pyrcc5 does not support the -py2 and -py3 flags of pyrcc4.  The output
of pyrcc5 is compatible with all versions of Python starting with Python
v2.6.

Still to do:

- Removal of support for old-style connections.

- Removal of any remaining deprecated and obsolete methods.

- Porting of remaining examples.

- Some documentation.

Phil


More information about the PyQt mailing list