Qt 5.8 introduces many new features and improvements as well as bugfixes
over the 5.7.x series. 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.8 series is binary compatible with the 5.7.x series.
Applications compiled for 5.7 will continue to run with 5.8.

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                                        *
****************************************************************************

QtLocation
-----------

 - Added geoservices plugin to support ESRI mapping, geocoding and routing
   services.
 - Improved HERE geoservice plugin code base (improved warning) and converted
   the HERE endpoints to newer versions (away from Nokia endpoints. At the same time
   China specific URLs were removed.
 - Improved Mapbox plugin to cater for better cache customization and
   to support the standard box map modes.
 - Renamed various internal C++ functions to improve code readability
 - Added better high DPI support in the various geoservice provider plugins.
   For more details see QTBUG-53318, QTBUG-48868 and QTBUG-36949.
 - [QTBUG-45284] Added offline data support and improved cache handling in OSM
   geoservice plugin
 - Added routing support to Mapbox plugin
 - Added server side provider support for QtLocation. This enables the quicker
   selection of alternative providers by already deployed OSM applications in case
   an OSM based default provider changes T&Cs.
 - Removed QtSystemInfo dependency from QtLocation
 - [QTBUG-56213] Adapted map related mouse/touch behavior following
   changes to general mouse/touch handling in Qt QML
 - Adapted QtLocation and QtPositioning to the Qt Lite related build system changes
 - Marked QGeoMapPrivate as private export
 - Added support for unitary tile caching. This enables use cases whereby the cache
   size can be defined in number of tiles rather then bytes.

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

Android
-------

 - [QTBUG-55988] Added capability to ask for Location permissions at runtime. This is
   required since Android 7.0.

WinRT
-----

 - Fixed a name space related compile problem in the positioning plugin for WinRT
 - Migrated the QtLocation rendering code to the new scenegraph changes enabling
   Direct3D 12
 - [QTBUG-54474] Added GeolocationAccessStatus existence check
 - [QTBUG-56340] Added direction information to position updates
 - [QTBUG-56623] Changed positioning plugin to use the platforms positioning time
   stamp rather than a programmatically acquired time stamp at the time of the callback.
   Effectively, this forwards time stamps from the GPS satellite to the user application.
 - [QTBUG-53925] Enabled WinRT positioning backend for MSVC2013/2015
