1Qt 5.5 introduces many new features and improvements as well as bugfixes
2over the 5.4.x series. For more details, refer to the online documentation
3included in this distribution. The documentation is also available online:
4
5  http://doc.qt.io/qt-5.5
6
7The Qt version 5.5 series is binary compatible with the 5.4.x series.
8Applications compiled for 5.4 will continue to run with 5.5.
9
10Some of the changes listed in this file include issue tracking numbers
11corresponding to tasks in the Qt Bug Tracker:
12
13  http://bugreports.qt.io/
14
15Each of these identifiers can be entered in the bug tracker to obtain more
16information about a particular change.
17
18****************************************************************************
19*                          Deprecation Notice                              *
20****************************************************************************
21
22 - Support for the following platforms or toolchains is deprecated in Qt
23   5.5 and will be removed as of Qt 5.6:
24   * Apple OS X builds using GNU libstdc++
25   * BlackBerry 10
26   * QNX 6.5
27
28   The following platforms or toolchains are deprecated and will be
29   removed as of Qt 5.7:
30   * Apple OS X 10.7 (Lion)
31   * GNU Compiler Collection (GCC) versions 4.6 and earlier
32   * Microsoft Visual Studio compiler versions 2008 and 2010
33   * Microsoft Windows XP, Windows Vista
34   * Microsoft Windows Embedded Compact 7
35
36   Deprecated platforms and toolchains continue to work until removed.
37
38 - The QtWebKit and QtQuick1 modules and support for the QML 1 language
39   are deprecated and Qt 5.5 will be the last release to include
40   them. Starting with Qt 5.6, the source code for those modules will
41   not be included in Qt's packaging. Compiling the 5.5 release of
42   QtWebKit modules along with Qt 5.6 or future versions should
43   work. QtQuick1 is not guaranteed to work in future versions after
44   Qt 5.6.
45
46 - The QtScript module is deprecated and will be removed from Qt's
47   packaging starting with version 5.7. The 5.5 and 5.6 releases of
48   QtScript should continue to work along with Qt 5.7 and future
49   versions.
50
51 - [QTBUG-25121] The usage of the QStyleOptionProgressBar::orientation
52   member has been deprecated.
53
54 - QLibraryInfo::buildDate() was deprecated and will return a constant
55   date now.
56
57****************************************************************************
58*                          Future Direction Notice                         *
59****************************************************************************
60
61 - In Qt 6, QCoreApplication::notify() will not be called for events being
62   delivered to objects outside the main thread. The reason for that is
63   that the main application object may begin destruction while those
64   threads are still delivering events, which is undefined behavior.
65   Applications that currently override notify() and use that function
66   outside the main thread are advised to find other solutions in the mean
67   time.
68
69 - Qt 5.7 will begin requiring certain C++11 features in order to
70   compile. The minimum compiler versions for that release will be:
71   * Clang 3.2 (included in XCode 5.0)
72   * GCC 4.7
73   * Intel C++ Composer XE 2013 SP1 (compiler version 14.0)
74   * Microsoft Visual Studio 2012 (compiler version 17.0)
75
76****************************************************************************
77*                        Important Behavior Changes                        *
78****************************************************************************
79
80 - Q_ASSERT will now expand the condition even in release mode when asserts
81   are disabled, albeit in an unreachable code path. This solves compiler
82   warnings about variables and functions that were unused in release mode
83   because they were only used in assertions. Unfortunately, codebases that
84   hid those functions and variables via #ifndef will need to remove the
85   conditionals to compile with Qt 5.5.
86 - QDBusConnection::sender() (deprecated since Qt 4.3) has changed to
87   always return an invalid QDBusConnection. To know what connection the
88   incoming call was received from, use QDBusContext.
89 - QHostAddress will no longer convert IPv6 addresses of type "v4-mapped"
90   to IPv4. To perform this conversion manually, construct another
91   QHostAddress with the result of toIPv4Address().
92 - (DY)LD_LIBRARY_PATH will no longer "stick" in the process environment
93   when starting a QProcess. This means that if a QProcess is started with
94   a clear environment, it will not specially inherit (DY)LD_LIBRARY_PATH
95   from the parent process. This should not affect most applications, but
96   if the old behavior is desired, one can simply pass a clear
97   QProcessEnvironment with the (DY)LD_LIBRARY_PATH values added, to the
98   QProcess.
99 - QAbstractTableModel and QAbstractListModel now reimplement sibling()
100   to avoid calling parent() (which returns a constant). Subclasses of
101   these models that override parent(), will likely also need to
102   override sibling() now.
103-  Qt 5.5 received some header #include cleanups. Code that relied on indirect
104   includes from Qt headers may need to include some headers explicitly now.
105   For example, qstringlist.h no longer includes QDataStream and QObject.
106
107 - QCoreApplication:
108   * [QTBUG-30330][QTSOLBUG-184] On Windows, QCoreApplication::arguments()
109     now returns a list built from argv on Windows as well if a modified
110     argv was passed to the class' constructor.
111
112 - QIODevice:
113   * Opening Android assets with QIODevice::ReadWrite now returns false to
114     correctly indicate that the files are not writable.
115
116 - QItemDelegate:
117   * [QTBUG-3305] QItemDelegate will now not close a
118     QTextEdit/QPlainTextEdit editor when the tab key is pressed; instead,
119     the key will reach the editor.
120
121 - QProgressDialog:
122   * [QTBUG-17427][QTBUG-25316] The timer for estimating the duration of
123     the progress dialog is now started in the constructor and in
124     setValue(minimum()), as well as when calling setValue(0), as
125     previously documented.
126
127 - QSaveFile:
128   * [QTBUG-44086] Files created by QSaveFile do now have the same
129     rights as files created by QFile. This also fixes a regression in
130     QSettings: In the Qt 5.4 series, new files created by QSettings
131     were only readable by the current user.
132
133 - QVariant:
134   * [QTBUG-42722] QVariant now obeys the C++ type promotion rules when
135     comparing numeric types (integrals, float and double), including the
136     fact that unsigned comparisons are preferred for types of the same
137     rank (that is, now QVariant(-1) > QVariant(0U)).
138
139 - QWindow:
140   * QWindows will no longer be re-shown automatically when moved from a
141     destroyed QScreen, unless that QScreen was a virtual sibling of the
142     primary screen.
143
144 - qmake:
145   * For commercial builds, qmake now checks for a valid Qt license. This
146     requires setting up a Qt Account (or .qt-license file) on the
147     development machine.
148   * Qt configure and qmake used with a MinGW spec will no longer emulate
149     MSVC by picking up the INCLUDE and LIB environment variables. Use the
150     -I/-L configure options to pass additional paths, as you would under
151     Unix.
152   * A lot of quoting issues have been fixed. As a side effect, qmake
153     has become more sensitive to over-quoted file names in project
154     files.
155   * qmake is now stricter about syntax errors in project files.
156
157****************************************************************************
158*                               Library                                    *
159****************************************************************************
160
161QtCore
162------
163
164 - Added qEnvironmentVariableIntValue().
165 - Added Q_DECL_RELAXED_CONSTEXPR for the corresponding C++14 feature
166 - Added qHashRange() and qHashRangeCommutative() functions to aid
167   implementing qHash() overloads for custom types.
168 - Q_ENUMS and Q_FLAGS have been deprecated, and replaced by Q_ENUM and
169   Q_FLAG macros. These two new macros automatically register the enum with
170   the Qt metatype system, allowing automatic conversion to or from string
171   in QVariant, or to show the strings by QDebug operators. They also
172   enable the new QMetaEnum::fromType function.
173 - QPersistentModel index becomes an built-in meta-type, including QVariant
174   support.
175 - Updated Unicode data to v.7.0
176 - Updated QLocale data to CLDR v.27
177 - Updated QTimeZone data to CLDR v.27
178
179 - Item Models:
180   * QItemSelectionModel can now be created without a model and have one
181     set later.
182
183 - Logging:
184   * QtInfoMsg got added as a new QtMsgType. Use the new qInfo(), qCInfo()
185     macros to log to it.
186
187 - Logging framework:
188   * %{threadid} now prints the real thread ID. On Linux, OS X, iOS,
189     FreeBSD and Windows, the value is unique system-wide. On other
190     systems, it will print something that may be process-specific (the
191     value of pthread_self(3)). To print the pointer to QThread::current(),
192     use %{qthreadptr}.
193
194 - moc
195   * Classes annotated with Q_GADGET can now have Q_PROPERTY and Q_INVOKABLE
196     functions. QMetaProperty::{read,write}OnGadget and
197     QMetaMethod::invokeOnGadget can be used with those.
198
199 - Objective-C:
200   * [QTBUG-37116] Added NSDate/CDateRef converters for QDateTime
201
202 - QAssociativeIterable:
203   * Added find().
204
205 - QCommandLineParser:
206   * Message boxes are used to display errors and usage if no console
207     window can be obtained on Windows.
208
209 - QDebug:
210   * Printing of QStrings and QStringRefs whenever "noquote" is not active
211     now prints the strings in a format that can be copied back to C++
212     code. All characters that aren't printable in US-ASCII are escaped
213     (this includes printable Unicode characters outside of US-ASCII).
214     Pretty-printing will not respect QTextFormat padding or field widths.
215   * Similarly, printing of QByteArrays whenever "noquote" is not active now
216     prints the arrays in a format consumable in C++, with all non-printable
217     characters printed in hex escape sequences.
218
219 - QJsonObject:
220   * Added conversion to and from QVariantHash
221
222 - QLibrary:
223   * Added DeepBindHint which maps to RTLD_DEEPBIND on Linux making it
224     possible to load libraries with external symbols that clash with
225     already loaded ones, such as plugins linked to Qt4.
226
227 - QLockFile:
228   * [QTBUG-45497] Detection of stale lock files got more robust and takes
229     the name of the process that belongs to the stored PID into account.
230
231 - QRegularExpression:
232   * Support for matching using QStringRef as the subject's string type has
233     been added.
234
235 - QSet:
236   * Can now be used as the key in QSet and QHash.
237
238 - QSortFilterProxyModel:
239   * [QTBUG-35440] QSortFilterProxyModel now properly forwards the roles
240     that have been changed when the source model emits dataChanged().
241
242 - QStandardPaths:
243   * [QTBUG-38872][QTBUG-38845] Added QStandardPaths::AppConfigLocation,
244     for application-specific configuration directory. ConfigLocation was
245     inconsistent.
246
247 - QString:
248   * Added support for retrieving the QRegularExpressionMatch to indexOf
249     and lastIndexOf.
250   * Added QT_RESTRICTED_CAST_FROM_ASCII macro as less intrusive
251     alternative to QT_NO_CAST_FROM_ASCII.
252   * Added methods for convenient conversion to and from std::u16string and
253     std::u32string.
254   * Added asprintf(), vasprintf().
255
256 - QThreadPool:
257   * Added QThreadPool::cancel() which allows removing from the job queue a
258     job that hasn't been started yet.
259
260 - QTimeZone:
261   * Added methods systemTimeZone() and utc() that return QTimeZone objects
262     for the system time zone and for UTC, respectively.
263
264 - QVector:
265   * Added QVector::append(const QVector &) overload
266
267 - QVector3D:
268   * Added convenience project and unproject methods to use like gluProject
269     and gluUnproject
270
271 - QtMath:
272   * qmath.h no longer includes math.h, so any sources depending on that
273     indirect inclusion may fail to build.
274
275 - State Machine:
276   * Added support for internal transitions.
277   * [QTBUG-40293] Added an addTransition() overload that takes a
278     pointer-to-member for the signal triggering the transition.
279   * [QTBUG-44963] Fixed an issue where a history state restore would
280     activate too many states, possibly putting the state machine in an
281     invalid state.
282   * QTBUG-44783] Fixed an issue where the state machine could end up in
283     an invalid state when transitions from a parallel state were not
284     checked for conflicts.
285   * Fixed a case where a parallel state was not exited and re-entered
286     when one of its substates was exited and subsequently re-entered.
287   * Fixed the non-deterministic behavior of picking a transition from a
288     set of conflicting transitions.
289
290QtDBus
291------
292
293 - Added annotation org.qtproject.QtDBus.MethodName to allow
294   autogenerating C++ methods with different names to the original DBus
295   method
296
297QtGui
298-----
299
300 - Added support for device-specific backend plugins in eglfs.
301 - eglfs is now using fullscreen mode also when running on X11.
302 - Added a plugin to get mouse, keyboard and touch events via libinput.
303 - The linuxfb platform plugin's input device handling is now compatible
304   with eglfs. The evdev keyboard, mouse and touch code is compiled in by
305   default.
306 - The mouse cursor on Embedded Linux is now handling hotplugging correctly
307   with eglfs and linuxfb regardless of how the input handling code is
308   loaded (via a generic plugin or built in to the platform plugin).
309 - QOffscreenSurface is now relying on EGL_KHR_surfaceless_context when
310   available, and avoids creating a pbuffer surface when the extension is
311   present.
312 - initializeOpenGLFunctions() no longer needs to be called when querying a
313   versioned function wrapper object via QOpenGLContext::versionFunctions().
314 - Added version function classes for OpenGL 4.4 and 4.5 and deprecate some
315   erroneously classified functions.
316 - Exposed TabFocusBehavior in QStyleHints
317 - [QTBUG-42240][QTBUG-43263] Qt now contains a built-in GPU driver
318   blacklist for Windows that disables the usage of desktop OpenGL with
319   some older cards that are known to be unstable with opengl32.dll.
320 - [QTBUG-44937] Support for QScreen::grabWindow() is now available on
321   embedded platforms (eglfs, linuxfb).
322 - Added QStyleHints::singleClickActivation to access whether the platform
323   expects item activation to occur on single clicks rather than double
324   clicks.
325 - [QTBUG-40034] QOpenGLWidget and QQuickWidget are now supported on iOS.
326
327 - Accessibility:
328   * [QTBUG-44479] Qt now reports text attributes correctly on Linux, so
329     ORCA+F now works properly in QTextEdit and other text controls.
330
331 - Accessibility / OS X:
332   * QTextEdit now properly reports to accessibility visual lines
333     (softlines) as lines, instead of whole paragraphs. This allows better
334     VoiceOver user experience when reading text line by line using arrows
335     up/down.
336   * Visual bounds returned by QTextEdit were singificantly improved; this
337     enables VoiceOver to draw properly positioned VoiceOver cursor.
338
339 - Image plugins:
340   * [QTBUG-37946][QTBUG-43563][QTBUG-45552][QTBUG-45865] An option has
341     been added to QImageReader to enable automatic application of EXIF
342     orientation. This behavior was default in Qt 5.4.1, but reverted in Qt
343     5.4.2.
344
345 - QFontDatabase:
346   * Added QFontDatabase::isPrivateFamily()
347
348 - QImage:
349   * Added support for grayscale and alpha 8-bit formats which can also be
350     rendered to.
351
352 - QPainter:
353   * [QTBUG-35830] QPainter will no longer try to replace IntersectClip
354     with ReplaceClip if the paint engine is a QPicture.
355
356 - QPlatformSurfaceEvent:
357   * [QTBUG-42476][QTBUG-42483] Added event class QPlatformSurfaceEvent,
358     which is sent to QWindow and QOffscreenSurface when native surface is
359     created or about to be destroyed.
360
361 - QQuaternion:
362   * Added methods to convert a quaternion to/from Euler angles and to/from
363     rotation matrix.
364
365 - QScreen:
366   * Added devicePixelRatio property.
367
368 - QTextDocument:
369   * Support for searching with a QRegularExpression in a document has been
370     added.
371
372 - QWheelEvent:
373   * On OSX, trackpad wheel event phase transitions now occur in the order
374     ScrollBegin, ScrollUpdate, ..., ScrollEnd, ScrollUpdate, ...,
375     ScrollEnd, where the second batch of updates represents momentum
376     events (inertial scrolling).
377
378 - QWindow:
379   * [QTBUG-32956] lastWindowClosed will now be emitted even if
380     quitOnLastWindowClosed is not set.
381
382 - Windows:
383   * [QTBUG-43263] Introduced experimental feature allowing the user to
384     specify a GPU driver buglist with some additional keywords to chooose
385     the GL renderer backend depending on GPU.
386
387 - i18n:
388   * [QTBUG-43447] Fixed bug where layout direction did not switch
389     according to the instruction in the translation file.
390
391 - Text:
392   * [QTBUG-39286] Fixed position of underline on centered text when the
393     text layout's width is an even number.
394
395QtNetwork
396---------
397
398 - [QTBUG-26295] Introduced libproxy backend for Unix platforms, enabled
399   automatically if the required dev package is present
400 - As some legacy ifdefs for OpenSSL 0.9.7 and 0.9.8f were removed, Qt
401   will no longer build with these versions. In addition, there is no
402   longer support for an OpenSSL library built with NO_TLSEXT.
403 - [QTBUG-26538] Fixed a bug that caused both QTcpSocket and QUdpSocket to
404   close the socket and lose any bound ports before connecting. Now
405   bind()/setSocketDescriptor() followed by connect() will retain the
406   original file descriptor.
407
408 - QLocalSocket:
409   * [QTBUG-16688] On Windows, waitForReadyRead now always waits for more
410     data, even if bytes are still in the buffer.
411
412 - QNetworkAccessManager:
413   * It is now possible to use TLS PSK ciphersuites when using HTTPS (or
414     similar protocols working over SSL).
415
416 - QSslSocket:
417   * [QTBUG-39077] It is now possible to use TLS PSK ciphersuites in client
418     sockets.
419   * A new SSL backend for iOS and OS X, implemented with Apple's Secure
420     Transport (Security Framework).
421
422 - SSL/TLS support:
423   * [QTBUG-18972] It is now possible to parse elliptic curve certificates.
424   * It is now possible to choose which elliptic curves should be used by
425     an elliptic curve cipher.
426
427QtTest
428------
429
430 - QCOMPARE now pretty-prints QSizePolicy{,::Policy,::ControlType{,s}}.
431 - QtTest now prints an escaped version of QByteArrays that failed to
432   compare with QCOMPARE, instead of the hex dump.
433 - QTest::toString() can now be overloaded (instead of just specialized)
434   for custom types, and is now reliably found through argument-dependent
435   lookup (ADL).
436
437QtWidgets
438---------
439
440 - Added QPlainTextEdit::createStandardContextMenu(QPoint) overload that
441   takes the position in document coordinates. This method enables the
442   actions that are sensitive to the given position eg. where the user
443   clicked.
444
445 - Accessibility / OS X:
446   * VoiceOver users of QTextEdit can now use mouse and touch exploration
447     on trackpad to point at text to have spoken to them.
448
449 - Layouts:
450   * [QTBUG-43099] Fixed a bug where spans sometimes didn't distribute
451     themselves to the last cells they covered.
452
453 - QAbstractItemView:
454   * Added iconSizeChanged signal.
455
456 - QAbstractScrollArea:
457   * [QTBUG-8315] A getter for the viewport margins has been added.
458
459 - QComboBox:
460   * A QComboBox does not reset itself any more when setting the same model
461     more than once.
462   * [QTBUG-43350] QComboBox will now reset its root model index when a new
463     model is set on it.
464
465 - QHeaderView:
466   * [QTBUG-21201] Auto-scroll the view when making extended row/column
467     selections.
468   * Default section size is now style-dependent by default.
469   * Added resetDefaultSectionSize().
470
471 - QMenu:
472   * [QTBUG-20094] QMenu now pick up how "sloppy" submenus behave from the
473     style.
474
475 - QOpenGLWidget:
476   * [QTBUG-40717] Added an UpdateBehavior flag to QOpenGLWidget and
477     enabled support for NoParitalUpdate for QOpenGLWidget. NoPartialUpdate
478     is the default update behavior for QOpenGLWidget.
479
480 - QSizePolicy:
481   * QSizePolicy::ControlTypes is now introspectable through QSizePolicy's
482     meta object.
483
484 - QToolButton:
485   * [QTBUG-23396] Fixed the double removal of ampersands.
486
487 - QTreeWidget:
488   * [QTBUG-40060] Restored Qt 5.1 behavior of QTreeWidgetItems with
489     ItemIsTristate to enable automatic management of the check state.
490     User-editable tristate checkboxes are now enabled by setting the new
491     flag ItemIsUserTristate.
492
493****************************************************************************
494*                      Platform Specific Changes                           *
495****************************************************************************
496
497 - Removed BlackBerry PlayBook support.
498
499Android
500-------
501
502 - [QTBUG-43705] Fixed canonical path for nonexistent paths on some
503   devices.
504 - [QTBUG-38700] On devices with translucent system UI, Qt's windows are now
505   positioned to avoid overlapping it. This behavior can be
506   overridden in the application's AndroidManifest.xml.
507 - [QTBUG-45430] Fixed a bug that caused applications not to be resumable
508   after user changed language in system settings.
509
510 - QtCore / QTimeZone:
511   * [QTBUG-35908] Android timezones are now available in QTimeZone.
512
513 - QtWidgets:
514   * Enable QDockWidget window decorations.
515
516 - The QtDBus module is now disabled by default.
517
518 - Added support for arm64-v8a, x86_64, and mips64 with gcc 4.9.
519
520OS X
521----
522
523 - [QTBUG-43999] QApplication::setWindowIcon now changes the icon for the
524   application in the dock.
525
526 - Text:
527   * [QTBUG-44708] Fixed appending text with a different writing system and
528     formatting to a latin ligature.
529
530Windows
531-------
532
533 - QMimeData:
534   * [QTBUG-17373] Added support for handling dropping of multiple mail
535     attachments, adding ;index=N to the mimetype string
536     application/x-qt-windows-mime;value="FileContents"
537
538 - Text:
539   * [QTBUG-44501] Fixed design metrics for text
540
541X11/XCB
542-------
543
544 - GLX and EGL code paths are now dynamically resolved, making it possible
545   for one build of a plugin to use both code paths. The default is to use
546   the GLX code path if available. This can be overridden by specifying
547   QT_XCB_GL_INTEGRATION=xcb_egl as an environment variable.  Enable the
548   logging category qt.xcb.glintegration.debug to get debug log output of
549   what integration is used.
550 - [QTBUG-31762] QSystemTrayIcon now uses StatusNotifier D-Bus protocol
551   when the desktop environment supports it
552 - [QTBUG-40174][QTBUG-42985] If all QScreens (xcb outputs) are
553   disconnected while an application is running,
554   QGuiApplication::primaryScreen() will now return null until a screen is
555   connected again.
556
557****************************************************************************
558*                      Compiler Specific Changes                           *
559****************************************************************************
560
561 - Qt 5.5 now unconditionally uses the "using" keyword. Compilers that do
562   not support this keyword are deprecated and will not be able to build
563   Qt. Previous versions of Qt may or may not compile, as no testing was
564   done to ensure it worked.
565 - Visual Studio: -Zm200 (an option to specify the precompiled header
566   memory allocation limit) is not added anymore by qmake to the compiler
567   calls. If you encounter an C1076 compiler error you might need to re-add
568   it in your .pro file.
569
570****************************************************************************
571*                                Tools                                     *
572****************************************************************************
573
574configure & build system
575------------------------
576
577 - Added support for VS2015.
578 - [QTBUG-31814][OS X/iOS] Qt is now built with a relative RPATH.
579 - [VS2012+] Qt is now always built with C++11 with these compilers.
580 - [Windows] Added -static-runtime option.
581 - Added support for GCC/Clang -fsanitize= options.
582 - Enabled tslib autodetection by default.
583 - Added configure-time check for IPC support.
584 - [QTBUG-44690][QNX] Fixed NEON detection when cross-compiling on Windows.
585 - On-device compilation should work better on RaspPi and some other
586   devices now (use linux-g++ mkspec).
587 - configure -redo and config.status support spaces in arguments now.
588 - Qt can be now built in and installed to directories with spaces.
589   Note that source directories with spaces are still not supported.
590
591qmake
592-----
593
594 - [QTBUG-3069][Linux] Building with -rpath will now create DT_RUNPATH tags
595   instead of DT_RPATH, allowing LD_LIBRARY_PATH to override the rpath.
596 - [QTBUG-41917][VS] Fixed project generation when PRECOMPILED_SOURCE is
597   in a different directory than PRECOMPILED_HEADER.
598 - [QTBUG-42454][MinGW] Added handling of QMAKE_MANIFEST.
599 - [QTBUG-13496][MSVC] CONFIG+=no_batch is now automatically added when
600   multiple sources with the same base name exist.
601 - Added $$[QT_INSTALL_PREFIX/dev], etc. properties which reflect the
602   on-device locations of Qt (the -prefix, etc. passed to configure).
603 - Building under MSys is less problematic now.
604 - [QTBUG-37269] Fixed cross-compilation for Unix on Windows/MinGW.
605 - [QTBUG-8202][QTBUG-20566][QTBUG-44685] Fixed distclean targets.
606 - [QTBUG-43162][VS] Added DISTFILES support for Visual Studio projects.
607 - [QTBUG-41753][VS][WinPhone] Fixed MdilXapCompile deployment step.
608 - [QTBUG-44960][VS] Reworked .dll deployment. Added $$QMAKE_DLL_PATHS.
609 - [QTBUG-44823][MSVC] Fixed unreasonable values being passed in /VERSION.
610   Added $$VERSION_PE_HEADER to override the value.
611 - [WinRT] The icon handling was reworked/extended.
612 - [QTBUG-12711] Fixed infinite recursion on malformed .prl files.
613
614****************************************************************************
615*                          Third-party libraries                           *
616****************************************************************************
617
618 - [QTBUG-44815][QTBUG-37660][QTBUG-44694][QTBUG-42443] ANGLE was updated
619   to Chromium branch 2356 (2.1~99f075dade7c).
620