PyQt Changelog

What's new in PyQt 6.7.0

Apr 26, 2024
  • PyQt v6.7.0 has been released. This adds support for Qt v6.7.

New in PyQt 6.6.1 (Dec 4, 2023)

  • PyQt v6.6.1 has been released. This is a minor bug-fix release.

New in PyQt 6.6.0 (Oct 30, 2023)

  • PyQt6-3D v6.6.0, PyQt6-Charts v6.6.0, PyQt6-DataVisualization v6.6.0, PyQt6-NetworkAuth v6.6.0 and PyQt6-WebEngine v6.6.0 have also been released.

New in PyQt 6.5.3 (Oct 15, 2023)

  • Added the missing QAbstractItemModel.multiData() method.
  • Added the missing QModelRoleDataSpan class.

New in PyQt 6.5.2 (Jul 24, 2023)

  • Added the missing NativeGesture, Quit, EnterEditFocus and LeaveEditFocus members of QEventType.

New in PyQt 6.4.2 (Feb 6, 2023)

  • This is a bug-fix release.

New in PyQt 6.4.1 (Jan 29, 2023)

  • PyQt v6.4.1 has been released. This is a minor functional release.
  • Added allocationLimit() and setAllocationLimit() to QImageReader.
  • Added toHBITMAP(), fromHBITMAP(), toHICON() and fromHICON() to QImage on Windows.

New in PyQt 6.3.1 (Jun 23, 2022)

  • Added qRegisterResourceData() and qUnregisterResourceData() to QtCore to help in supporting legacy resource files from PyQt5.
  • Requires v13.4 of the sip module which adds support for enums with missing members and the sip.array support.
  • Reverted the Qt.GestureType related changes made in v6.2.3 as they are no longer necessary with the support for missing enum members.
  • The QEvent constructor that takes an int argument is now deprecated.
  • Refactored the draw methods of QPainter to accept sip.array objects of appropriate types. Such arrays, once initialised, can be used very efficiently as they do not require repeated conversion from the usual Python collection types.
  • Added resize() to QPolygon, QPolygonF and QXmlStreamAttributes.

New in PyQt 5.15.7 (Jun 19, 2022)

  • Requires v12.11 of the sip module which adds support for sip.array.
  • Refactored the draw methods of QPainter to accept sip.array objects of appropriate types. Such arrays, once initialised, can be used very efficiently as they do not require repeated conversion from the usual Python collection types.
  • Added the missing QBluetoothUuid constructors.

New in PyQt 6.3.0 (Apr 12, 2022)

  • PyQt v6.3.0 has been released. This adds support for Qt v6.3.0. PyQt6-3D v6.3.0, PyQt6-Charts v6.3.0, PyQt6-DataVisualization v6.3.0, PyQt6-NetworkAuth v6.3.0 and PyQt6-WebEngine v6.3.0 have also been released.

New in PyQt 6.2.3 (Feb 1, 2022)

  • PyQt v6.2.3 has been released. This is a minor bug-fix release. There is also a new release of PyQt6-sip.

New in PyQt 6.2.2 (Dec 2, 2021)

  • Added the missing QBluetoothUuid constructors.
  • Added the missing QMediaPlayer loop-related methods.

New in PyQt 5.15.6 (Oct 30, 2021)

  • This is a minor bug-fix release for a regression that only affects source builds using Python v3.10.

New in PyQt 5.15.5 (Oct 25, 2021)

  • Added the missing QPdfWriter.setPageSize() overload.
  • pylupdate5 now assumes that the default codec is UTF-8 and specifies v2.1 as the .ts file format.

New in PyQt 5.15.4 Dev (Feb 28, 2021)

  • Lib/pyproject.toml:
  • Fixed the project dependencies.
  • Rb-product, rb-product.toml:
  • Updated the product file.

New in PyQt 6.0.2 Dev (Feb 9, 2021)

  • Fixed the parsing of pointers to non-QObject types.

New in PyQt 6.0.1 Dev (Feb 8, 2021)

  • PyQt v6.0.1 has been released. This is a bug-fix release. PyQt6-3D v6.0.1 and PyQt6-NetworkAuth v6.0.1 have also been released:
  • Added QSocketNotifier.
  • The Qt Designer and qmlscene plugins now work when installed in a venv.
  • Some of the PyQt5 examples have been ported.
  • The LGPL version of Qt is now packaged in separate wheels which are dependencies of both the commercial and GPL PyQt6 wheels.

New in PyQt 6.0.0 Dev (Oct 6, 2020)

  • PyQt6 introduces the following incompatibilities over PyQt5:
  • The Qt module has been removed.
  • QtWidgets.qApp has been removed.
  • The QtCore.PYQT_CONFIGURATION dict has been removed.
  • pyrcc has been removed.
  • All enums are now implemented as enum.Enum (PyQt5 used enum.IntEnum for scoped enums and a custom type for traditional named enums). PyQt5 allowed an int whenever an enum was expected but PyQt6 requires the correct type.
  • QFlags are implemented as enum.Flag.
  • All exec_() methods have been removed.
  • All print_() methods have been removed.
  • Python v3.6 or later is required.

New in PyQt 5.15.2 Development (Sep 18, 2020)

  • Lib/project.py:
  • Check the version of Qt is supported.

New in PyQt 5.14.1 Development (Jan 6, 2020)

  • This is a minor bug-fix release.

New in PyQt 5.13.1 (Sep 13, 2019)

  • Added the (temporary) pyqt5_enable_new_onexit_scheme() to allow experimentation with the new on-exit clean-up scheme.
  • Added the missing QObject.disconnect(QMetaObject.Connection) overload.
  • Deprecated PYQT_CONFIGURATION.

New in PyQt 4.12.3 (Sep 2, 2018)

  • This is a minor bug-fix release and is planned to be the last ever release of PyQt4.

New in PyQt 5.11.1 (Jun 24, 2018)

  • Added tag 5.11 for changeset 8f5d26af2746

New in PyQt 5.11 Development (Jun 8, 2018)

  • PyQt5.msp:
  • Removed the internal QTest methods that have been removed in Qt v5.11.0.
  • Merged the 5.10-maint branch

New in PyQt 5.10.1 (Jun 8, 2018)

  • PyQt v5.10.1 has been released. This release adds support for Qt v5.10.1. There are corresponding releases of PyQt3D, PyQtChart, PyQtDataVisualization and PyQtPurchasing.

New in PyQt 5.10 Development (Jan 10, 2018)

  • qpy/QtCore/qpycore_qobject_helpers.cpp:
  • Properly fixed a regression in QObject.inherits().
  • [92cbc384946a] [tip]
  • PyQt5.msp:
  • Finished updating QtCore for Qt v5.10.0.
  • [3dcac7147ec6]

New in PyQt 5.9.1 (Nov 7, 2017)

  • NEWS:
  • Released as v5.9.1. [6a8d6710ba64] [5.9.1] <5.9-maint>
  • lib/configure.py:
  • Windows-specific fixes related to the detection of sip version mismatches. [2a30790477c1] <5.9-maint>

New in PyQt 5.4.0 (Feb 26, 2015)

  • added full support for Qt v5.4.0
  • added the QtWebChannel module
  • added the QtWebEngineWidgets module
  • added the QtXml module

New in PyQt 5.3.2 (Sep 13, 2014)

  • Added the Enginio module.
  • Added the QJsonDocument and QJsonValue classes.
  • QJsonObject is implemented as a Python dict.
  • QJsonArray is implemented as a Python list.
  • Added setUnifiedTitleAndToolBarOnMac() and unifiedTitleAndToolBarOnMac() to QWidget.
  • Added windowHandle() to QWidget.

New in PyQt 5.3.1 (Jul 4, 2014)

  • Added support for Qt v5.3.1.
  • Added the -tr-function and -translate-function command line options to pylupdate5.

New in PyQt 5.3 (May 28, 2014)

  • By default a Python slot is only invoked if the underlying C++ instance still exists.
  • Added the no_receiver_check argument to connect().
  • Added support for Qt v5.3.0.
  • Added the QtQuickWidgets module.
  • Added the QtWebSockets module.
  • Added the --target_py_version, --sysroot and --no-tools option to configure.py.
  • Cross-compilation (specifically to iOS and Android) is now supported.

New in PyQt 5.2.1 (Mar 17, 2014)

  • Full support for Qt v5.2.1.
  • Properties, signals and slots can now be defined in mixins (i.e. non-QObject classes).
  • Support for creating QSGGeometry.AttributeSet instances.
  • Fundamental values may now be given whenever a QJSValue is expected.
  • Building PyQt5 as static libraries now works.
  • Support for building without OpenGL.

New in PyQt 5.2 (Jan 8, 2014)

  • This fully supports Qt v5.2.0 including the new QtBluetooth, QtPositioning, QtMacExtras, QtWinExtras and QtX11Extras modules.

New in PyQt 5.1.1 (Oct 3, 2013)

  • Added full support for Qt v5.1.
  • Added the QtSensors module.
  • Added the QtSerialPort module.
  • A (nearly) complete set of OpenGL v2.0 and OpenGL ES/2 bindings are included.
  • Cross-compilation is now supported. A configuration file for Python3 on the Raspberry Pi is included.

New in PyQt 5.0.1 (Aug 22, 2013)

  • Added the QtQuick module including the ability to create Python Quick items from QML.
  • Added the QtQml module including the ability to create Python objects from QML.
  • Added the QtMultimediaWidgets module.
  • Completed the implementation of the QtMultimedia module including support for cameras and radios.
  • Added the remaining OpenGL classes to the QtGui module.
  • Added the revision keyword argument to pyqtProperty().
  • Added the revision and arguments keyword arguments to pyqtSignal().
  • Added the revision keyword argument to pyqtSlot().
  • Added the pyqt5qmlplugin plugin for qmlscene.
  • The DBus main loop module has been renamed to dbus.mainloop.pyqt5 from dbus.mainloop.qt.
  • Added the --no-qml-plugin and --qml-plugindir options to configure.py.
  • Added many QtMultimedia, QML and QtQuick related examples.
  • Classes now support co-operative multi-inheritance. (This may introduce incompatibilities with PyQt v5.0.)

New in PyQt 5.0 (Jun 17, 2013)

  • Python v3, v2.7 or v2.6 are supported
  • The module structure reflects the library structure of Qt v5.
  • Parts of the Qt v5 API that are marked as deprecated or obsolete are not supported.

New in PyQt 4.10.1 (Apr 22, 2013)

  • Added support for QtCore.pyqtSetPickleProtocol() and QtCore.pyqtPickleProtocol() to set and get the protocol used to pickle Python objects when serialising them for Qt.
  • Added support for the --resource-suffix option to pyuic4.
  • Added a new build system (configure-ng.py) which will be compatible with SIP v5 and will eventually support cross-compilation.
  • Added support for Qt v5.0.2.

New in PyQt 4.9.6-1 (Dec 10, 2012)

  • Added the missing constBits() and constScanLine() methods to QImage.
  • A QPoint can now be specified whenever a QPointF is expected.
  • Added support for Qt v4.8.4.
  • Added support for Qt v5.0-rc1 (QtCore, QtGui, QtHelp, QtNetwork, QtSql, QtSvg, QtWebKit and QtXml only).
  • Added the --no-deprecated option to configure.py.
  • SIP v4.14.2 is now required.

New in PyQt 4.9.5 (Oct 1, 2012)

  • Added support for Qt v4.8.3.
  • Added support for Qt v5-beta1 (QtCore, QtGui, QtHelp, QtNetwork, QtSql, QtSvg, QtWebKit and QtXml only).
  • Implemented __str__ and __unicode__ for QChar.
  • Added the missing QPointF operator*(qreal, QPointF).
  • Added the customcompleter.py example.
  • SIP v4.14 is now required.

New in PyQt 4.9.4 (Jul 11, 2012)

  • This fixes a build problem that affected Windows and OS/X.

New in PyQt 4.9.1 (Feb 13, 2012)

  • QPainter can now be used as a context manager.
  • Added the missing QPixmap.HBitmapFormat.Alpha enum member on Windows.
  • Added support for the Python v3 implementation of dbus-python.
  • Bug fixes.

New in PyQt 4.8.5 (Aug 11, 2011)

  • Added support for Qt v4.7.3.
  • Added IPv6 support for QHostAddress.
  • Added the missing QAbstractFileEngine.beginEntryList().
  • Bug fixes.