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

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

  http://doc.qt.io/qt-5/index.html

The Qt version 5.6 series is binary compatible with the 5.5.x series.
Applications compiled for 5.5 will continue to run with 5.6.

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

  https://bugreports.qt.io/

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

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

 - QSerialPortInfo:
   * Added enumeration of dial-in serial ports on FreeBSD.
   * [QTBUG-50895] Added enumeration of dial-in serial ports on OS X.
   * Added receiving of USB dongle's serial number on Windows.

 - QSerialPort:
   * Prohibited changing of RTS in HardwareFlowControl mode.
   * [QTBUG-48677] Fixed reading of data remainder with the CDC USB device on Windows.
