Qt 5.0.2 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.0.0 and 5.0.1.

For more details, refer to the online documentation included in this
distribution. The documentation is also available online:

  http://qt-project.org/doc/qt-5.0/

Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:

  http://bugreports.qt-project.org/

Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.


****************************************************************************
*                           General                                        *
****************************************************************************

General Improvements
--------------------

 - Fix build when Qt is configured with -no-opengl.
 - Various documentation improvements.

****************************************************************************
*                          Library                                         *
****************************************************************************

 - [QTBUG-29138] Strengthen reference to var properties during construction
   so they can be used even if GC runs while the object is being created.
 - [QTBUG-29176] Fix crash in PathView when path is empty.
 - [QTBUG-29560] Fix Text and TextEdit embedding images in RichText mode.

****************************************************************************
*                      Platform Specific Changes                           *
****************************************************************************

Qt for Windows
--------------

 - [QTBUG-28782] Enable sub-pixel anti-aliasing for default builds on Windows.

