v4.4.4 8th November 2008
  - QVariant.toPyObject() will now handle any Python object.  The way in which
    QVariant wraps objects has subtlely changed in that the name returned by
    typeName() may now be different, but is now more consistent.
  - Added the data() method to the QPolygon, QPolygonF and QXmlAttributes
    classes.
  - Added the --no-designer-plugin option to configure.py to disable the
    building of the Python plugin for Qt Designer.
  - Added the missing Windows and Mac versions to QSysInfo.

v4.4.3 8th Aug 2008
  - Added support for Qt v4.4.1.
  - A QChar can now be used whenever a QString is expected.
  - All read related methods that take a maximum read length will now raise an
    exception if the length is negative.
  - The QVariant constructor that took a QVariantList argument has been
    replaced with the fromList() static method.
  - The QVariant constructor that took a QVariantMap argument has been replaced
    with the fromMap() static method.
  - Added the embeddeddialogs.py and padnavigator.py examples from Igor
    Prischepoff.

v4.4.2 20th May 2008
  - A bug fix release.

v4.4.1 20th May 2008
  - Added the QRunnable and QThreadPool classes.

v4.4 13th May 2008
  - Added support for Qt v4.4 including the new QtHelp, QtWebKit, QtXmlPatterns
    and phonon modules.
  - Added support for QMetaObject.invokeMethod(), Q_ARG() and Q_RETURN_ARG().
  - Added support for QObject.staticMetaObject.
  - Added support for QScriptEngine.newFunction().
  - pyqtSignature() now supports the specification of the types of return
    values.
  - Added support for slots that return values.
  - Any Python object can now be wrapped as a QVariant.
  - pyqtProperty() now supports DESIGNABLE, SCRIPTABLE, STORED and USER (based
    on a patch from Ulrich Berning).
  - Added __repr__ support to QByteArray, QChar, QDate, QDateTime, QLatin1Char,
    QLatin1String, QLine, QLineF, QPoint, QPointF, QRect, QRectF, QRegExp,
    QSize, QSizeF, QString, QTime, QUrl and QUuid (based on a patch from
    Giovanni Bajo).
  - Added the --pyqt3-wrapper argument to pyuic4 to generate a PyQt3 style
    wrapper (from a patch from Ulrich Berning).
  - Added the musicplayer.py and capabilities.py Phonon examples.
  - Added the diagramscene.py example from Rajev Sebastian.
  - Added the systray.py example from Daniel Harding.
  - Added the Qt Designer multi-page widget, PyDateEdit and PyDateTimeEdit
    plugin examples from Ulrich Berning.

v4.3.3 5th December 2007
  - Added support for Qt v4.3.3.

v4.3.2 5th December 2007
  - Added the --confirm-license option to configure.py.
  - The GPL license now has the same exceptions as Qt.

v4.3.1 28th September 2007
  - Added the pyqtRemoveInputHook() and pyqtRestoreInputHook() functions to the
    QtCore module.
  - Added the sandbox GUI shell from Mark Summerfield.
  - Added the dragdroprobot.py example from Lieven Buts.

v4.3 30th July 2007
  - Added support for Qt v4.3.0.
  - partial functions may now be used as slots.
  - The QByteArray, QChar, QColor, QDate, QDateTime, QKeySequence, QLatin1Char,
    QLatin1String, QLine, QLineF, QMatrix, QPoint, QPointF, QPolygon, QRect,
    QRectF, QSize, QSizeF, QString and QTime classes and all enums may be
    pickled.
  - configure.py now supports long option names.
  - Changed the meaning of the -d (--destdir) option to configure.py so that
    the PyQt4 directory always exists.
  - Added the --consolidate option to configure.py to generate a consolidated
    module (only useful if Qt was built as static libraries).
  - Added the --plugin option to configure.py to specify which of Qt's static
    plugins should be included (only useful if Qt was built as static
    libraries).
  - Added the --enable option to configure.py to specify explicitly which
    modules are to be built.
  - Added the --no-qsci-api option to configure.py to disable the installation
    of the QScintilla API file.
  - Added the --no-sip-files option to configure.py to disable the installation
    of the .sip files.

v4.2 10th April 2007
  - Added the QtDesigner module to allow Qt Designer to be extended using PyQt.
    This includes the ability to write widget plugins in Python.  Many examples
    are included.
  - The __pyqtSignals__ class attribute is used to dynamically create new Qt 
    signals.
  - The existing QtCore.pyqtSignature() decorator can now be used to
    dynamically create new Qt slots.
  - The QtCore.pyqtProperty() function is used to dynamically create properties
    that behave as Qt properties and Python properties at the same time.
  - Added an implementation of the Qt event loop to be used with the standard
    Python DBus bindings (v0.80 and later).
  - A QGradient can be used whenever a QBrush is expected.
  - A StandardKey can be used whenever a QKeySequence is expected.
  - On X11 added the QApplication ctors that accept a Display *.
  - Added qt_set_sequence_auto_mnemonic(), qt_x11_wait_for_window_manager(),
    qt_mac_secure_keyboard(), qt_mac_set_dock_menu(),
    qt_mac_set_menubar_icons(), qt_mac_set_menubar_merge(),
    qt_mac_set_native_menubar() and qt_mac_set_press_and_hold_context() to the
    QtGui module.
  - Added support for PyOS_InputHook.
  - Added the basicsortfiltermodel.py example.

v4.1.1 9th December 2006
  - lambda functions may now be used as slots.
  - Added support for Qt Designer v4.2 palettes to pyuic4.

v4.1 4th November 2006
  - Added support for Python v2.5.
  - Added support for Qt v4.2 (except for the QtDBus module).
  - Added the QAxContainer module for the commercial version for Windows.
  - Added context manager support to the QMutexLocker, QReadLocker and
    QWriteLocker classes.
  - Added the QtTest module (only those functions that simulate user
    interaction).
  - Added the missing QStylePainter class.
  - Added the QX11EmbedContainer and QX11EmbedWidget classes for X11.
  - A Python date object can be used whenever a QDate is expected.
  - Added the QDate.toPyDate() method to convert a QDate to a Python date
    object.
  - A Python datetime object can be used whenever a QDateTime is expected.
  - Added the QDateTime.toPyDateTime() method to convert a QDateTime to a
    Python datetime object.
  - A Python time object can be used whenever a QTime is expected.
  - Added the QTime.toPyTime() method to convert a QTime to a Python time
    object.
  - Added support for Q_ENUMS and Q_FLAGS.
  - pyrcc4 now conforms to PEP 263.
  - Added the 2dpainting.py, collidingmice.py, elasticnodes.py,
    overpainting.py and webbrowser.py examples.
  - A PyQt4 API file is installed if QScintilla2 is found.

v4.0.1 15th July 2006
  - QPolygon can be constructed from a Python list of pairs of integer
    coordinates.  QPolygon.setPoints() can also take a Python list of pairs of
    integer coordinates.
  - pylupdate4 can now handle .ui files.
  - pyqt_config_args was added to pyqtconfig.py.

v4.0 10th June 2006
  - A complete rewrite for Qt v4.
