Revision control

++ Qt 5.5 introduces many new features and improvements as well as bugfixes
++ over the 5.4.x series. For more details, refer to the online documentation
++ included in this distribution. The documentation is also available online:
++
++
++ The Qt version 5.5 series is binary compatible with the 5.4.x series.
++ Applications compiled for 5.4 will continue to run with 5.5.
++
++ Some of the changes listed in this file include issue tracking numbers
++ corresponding to tasks in the Qt Bug Tracker:
++
++
++ Each of these identifiers can be entered in the bug tracker to obtain more
++ information about a particular change.
++
++ ****************************************************************************
++ * Deprecation Notice *
++ ****************************************************************************
++
++ - Support for the following platforms or toolchains is deprecated in Qt
++ 5.5 and will be removed as of Qt 5.6:
++ * Apple OS X builds using GNU libstdc++
++ * BlackBerry 10
++ * QNX 6.5
++
++ The following platforms or toolchains are deprecated and will be
++ removed as of Qt 5.7:
++ * Apple OS X 10.7 (Lion)
++ * GNU Compiler Collection (GCC) versions 4.6 and earlier
++ * Microsoft Visual Studio compiler versions 2008 and 2010
++ * Microsoft Windows XP, Windows Vista
++ * Microsoft Windows Embedded Compact 7
++
++ Deprecated platforms and toolchains continue to work until removed.
++
++ - The QtWebKit and QtQuick1 modules and support for the QML 1 language
++ are deprecated and Qt 5.5 will be the last release to include
++ them. Starting with Qt 5.6, the source code for those modules will
++ not be included in Qt's packaging. Compiling the 5.5 release of
++ QtWebKit modules along with Qt 5.6 or future versions should
++ work. QtQuick1 is not guaranteed to work in future versions after
++ Qt 5.6.
++
++ - The QtScript module is deprecated and will be removed from Qt's
++ packaging starting with version 5.7. The 5.5 and 5.6 releases of
++ QtScript should continue to work along with Qt 5.7 and future
++ versions.
++
++ - [QTBUG-25121] The usage of the QStyleOptionProgressBar::orientation
++ member has been deprecated.
++
++ - QLibraryInfo::buildDate() was deprecated and will return a constant
++ date now.
++
++ ****************************************************************************
++ * Future Direction Notice *
++ ****************************************************************************
++
++ - In Qt 6, QCoreApplication::notify() will not be called for events being
++ delivered to objects outside the main thread. The reason for that is
++ that the main application object may begin destruction while those
++ threads are still delivering events, which is undefined behavior.
++ Applications that currently override notify() and use that function
++ outside the main thread are advised to find other solutions in the mean
++ time.
++
++ - Qt 5.7 will begin requiring certain C++11 features in order to
++ compile. The minimum compiler versions for that release will be:
++ * Clang 3.2 (included in XCode 5.0)
++ * GCC 4.7
++ * Intel C++ Composer XE 2013 SP1 (compiler version 14.0)
++ * Microsoft Visual Studio 2012 (compiler version 17.0)
++
++ ****************************************************************************
++ * Important Behavior Changes *
++ ****************************************************************************
++
++ - Q_ASSERT will now expand the condition even in release mode when asserts
++ are disabled, albeit in an unreachable code path. This solves compiler
++ warnings about variables and functions that were unused in release mode
++ because they were only used in assertions. Unfortunately, codebases that
++ hid those functions and variables via #ifndef will need to remove the
++ conditionals to compile with Qt 5.5.
++ - QDBusConnection::sender() (deprecated since Qt 4.3) has changed to
++ always return an invalid QDBusConnection. To know what connection the
++ incoming call was received from, use QDBusContext.
++ - QHostAddress will no longer convert IPv6 addresses of type "v4-mapped"
++ to IPv4. To perform this conversion manually, construct another
++ QHostAddress with the result of toIPv4Address().
++ - (DY)LD_LIBRARY_PATH will no longer "stick" in the process environment
++ when starting a QProcess. This means that if a QProcess is started with
++ a clear environment, it will not specially inherit (DY)LD_LIBRARY_PATH
++ from the parent process. This should not affect most applications, but
++ if the old behavior is desired, one can simply pass a clear
++ QProcessEnvironment with the (DY)LD_LIBRARY_PATH values added, to the
++ QProcess.
++ - QAbstractTableModel and QAbstractListModel now reimplement sibling()
++ to avoid calling parent() (which returns a constant). Subclasses of
++ these models that override parent(), will likely also need to
++ override sibling() now.
++ - Qt 5.5 received some header #include cleanups. Code that relied on indirect
++ includes from Qt headers may need to include some headers explicitly now.
++ For example, qstringlist.h no longer includes QDataStream and QObject.
++
++ - QCoreApplication:
++ * [QTBUG-30330][QTSOLBUG-184] On Windows, QCoreApplication::arguments()
++ now returns a list built from argv on Windows as well if a modified
++ argv was passed to the class' constructor.
++
++ - QIODevice:
++ * Opening Android assets with QIODevice::ReadWrite now returns false to
++ correctly indicate that the files are not writable.
++
++ - QItemDelegate:
++ * [QTBUG-3305] QItemDelegate will now not close a
++ QTextEdit/QPlainTextEdit editor when the tab key is pressed; instead,
++ the key will reach the editor.
++
++ - QProgressDialog:
++ * [QTBUG-17427][QTBUG-25316] The timer for estimating the duration of
++ the progress dialog is now started in the constructor and in
++ setValue(minimum()), as well as when calling setValue(0), as
++ previously documented.
++
++ - QSaveFile:
++ * [QTBUG-44086] Files created by QSaveFile do now have the same
++ rights as files created by QFile. This also fixes a regression in
++ QSettings: In the Qt 5.4 series, new files created by QSettings
++ were only readable by the current user.
++
++ - QVariant:
++ * [QTBUG-42722] QVariant now obeys the C++ type promotion rules when
++ comparing numeric types (integrals, float and double), including the
++ fact that unsigned comparisons are preferred for types of the same
++ rank (that is, now QVariant(-1) > QVariant(0U)).
++
++ - QWindow:
++ * QWindows will no longer be re-shown automatically when moved from a
++ destroyed QScreen, unless that QScreen was a virtual sibling of the
++ primary screen.
++
++ - qmake:
++ * For commercial builds, qmake now checks for a valid Qt license. This
++ requires setting up a Qt Account (or .qt-license file) on the
++ development machine.
++ * Qt configure and qmake used with a MinGW spec will no longer emulate
++ MSVC by picking up the INCLUDE and LIB environment variables. Use the
++ -I/-L configure options to pass additional paths, as you would under
++ Unix.
++ * A lot of quoting issues have been fixed. As a side effect, qmake
++ has become more sensitive to over-quoted file names in project
++ files.
++ * qmake is now stricter about syntax errors in project files.
++
++ ****************************************************************************
++ * Library *
++ ****************************************************************************
++
++ QtCore
++ ------
++
++ - Added qEnvironmentVariableIntValue().
++ - Added Q_DECL_RELAXED_CONSTEXPR for the corresponding C++14 feature
++ - Added qHashRange() and qHashRangeCommutative() functions to aid
++ implementing qHash() overloads for custom types.
++ - Q_ENUMS and Q_FLAGS have been deprecated, and replaced by Q_ENUM and
++ Q_FLAG macros. These two new macros automatically register the enum with
++ the Qt metatype system, allowing automatic conversion to or from string
++ in QVariant, or to show the strings by QDebug operators. They also
++ enable the new QMetaEnum::fromType function.
++ - QPersistentModel index becomes an built-in meta-type, including QVariant
++ support.
++ - Updated Unicode data to v.7.0
++ - Updated QLocale data to CLDR v.27
++ - Updated QTimeZone data to CLDR v.27
++
++ - Item Models:
++ * QItemSelectionModel can now be created without a model and have one
++ set later.
++
++ - Logging:
++ * QtInfoMsg got added as a new QtMsgType. Use the new qInfo(), qCInfo()
++ macros to log to it.
++
++ - Logging framework:
++ * %{threadid} now prints the real thread ID. On Linux, OS X, iOS,
++ FreeBSD and Windows, the value is unique system-wide. On other
++ systems, it will print something that may be process-specific (the
++ value of pthread_self(3)). To print the pointer to QThread::current(),
++ use %{qthreadptr}.
++
++ - moc
++ * Classes annotated with Q_GADGET can now have Q_PROPERTY and Q_INVOKABLE
++ functions. QMetaProperty::{read,write}OnGadget and
++ QMetaMethod::invokeOnGadget can be used with those.
++
++ - Objective-C:
++ * [QTBUG-37116] Added NSDate/CDateRef converters for QDateTime
++
++ - QAssociativeIterable:
++ * Added find().
++
++ - QCommandLineParser:
++ * Message boxes are used to display errors and usage if no console
++ window can be obtained on Windows.
++
++ - QDebug:
++ * Printing of QStrings and QStringRefs whenever "noquote" is not active
++ now prints the strings in a format that can be copied back to C++
++ code. All characters that aren't printable in US-ASCII are escaped
++ (this includes printable Unicode characters outside of US-ASCII).
++ Pretty-printing will not respect QTextFormat padding or field widths.
++ * Similarly, printing of QByteArrays whenever "noquote" is not active now
++ prints the arrays in a format consumable in C++, with all non-printable
++ characters printed in hex escape sequences.
++
++ - QJsonObject:
++ * Added conversion to and from QVariantHash
++
++ - QLibrary:
++ * Added DeepBindHint which maps to RTLD_DEEPBIND on Linux making it
++ possible to load libraries with external symbols that clash with
++ already loaded ones, such as plugins linked to Qt4.
++
++ - QLockFile:
++ * [QTBUG-45497] Detection of stale lock files got more robust and takes
++ the name of the process that belongs to the stored PID into account.
++
++ - QRegularExpression:
++ * Support for matching using QStringRef as the subject's string type has
++ been added.
++
++ - QSet:
++ * Can now be used as the key in QSet and QHash.
++
++ - QSortFilterProxyModel:
++ * [QTBUG-35440] QSortFilterProxyModel now properly forwards the roles
++ that have been changed when the source model emits dataChanged().
++
++ - QStandardPaths:
++ * [QTBUG-38872][QTBUG-38845] Added QStandardPaths::AppConfigLocation,
++ for application-specific configuration directory. ConfigLocation was
++ inconsistent.
++
++ - QString:
++ * Added support for retrieving the QRegularExpressionMatch to indexOf
++ and lastIndexOf.
++ * Added QT_RESTRICTED_CAST_FROM_ASCII macro as less intrusive
++ alternative to QT_NO_CAST_FROM_ASCII.
++ * Added methods for convenient conversion to and from std::u16string and
++ std::u32string.
++ * Added asprintf(), vasprintf().
++
++ - QThreadPool:
++ * Added QThreadPool::cancel() which allows removing from the job queue a
++ job that hasn't been started yet.
++
++ - QTimeZone:
++ * Added methods systemTimeZone() and utc() that return QTimeZone objects
++ for the system time zone and for UTC, respectively.
++
++ - QVector:
++ * Added QVector::append(const QVector &) overload
++
++ - QVector3D:
++ * Added convenience project and unproject methods to use like gluProject
++ and gluUnproject
++
++ - QtMath:
++ * qmath.h no longer includes math.h, so any sources depending on that
++ indirect inclusion may fail to build.
++
++ - State Machine:
++ * Added support for internal transitions.
++ * [QTBUG-40293] Added an addTransition() overload that takes a
++ pointer-to-member for the signal triggering the transition.
++ * [QTBUG-44963] Fixed an issue where a history state restore would
++ activate too many states, possibly putting the state machine in an
++ invalid state.
++ * QTBUG-44783] Fixed an issue where the state machine could end up in
++ an invalid state when transitions from a parallel state were not
++ checked for conflicts.
++ * Fixed a case where a parallel state was not exited and re-entered
++ when one of its substates was exited and subsequently re-entered.
++ * Fixed the non-deterministic behavior of picking a transition from a
++ set of conflicting transitions.
++
++ QtDBus
++ ------
++
++ - Added annotation org.qtproject.QtDBus.MethodName to allow
++ autogenerating C++ methods with different names to the original DBus
++ method
++
++ QtGui
++ -----
++
++ - Added support for device-specific backend plugins in eglfs.
++ - eglfs is now using fullscreen mode also when running on X11.
++ - Added a plugin to get mouse, keyboard and touch events via libinput.
++ - The linuxfb platform plugin's input device handling is now compatible
++ with eglfs. The evdev keyboard, mouse and touch code is compiled in by
++ default.
++ - The mouse cursor on Embedded Linux is now handling hotplugging correctly
++ with eglfs and linuxfb regardless of how the input handling code is
++ loaded (via a generic plugin or built in to the platform plugin).
++ - QOffscreenSurface is now relying on EGL_KHR_surfaceless_context when
++ available, and avoids creating a pbuffer surface when the extension is
++ present.
++ - initializeOpenGLFunctions() no longer needs to be called when querying a
++ versioned function wrapper object via QOpenGLContext::versionFunctions().
++ - Added version function classes for OpenGL 4.4 and 4.5 and deprecate some
++ erroneously classified functions.
++ - Exposed TabFocusBehavior in QStyleHints
++ - [QTBUG-42240][QTBUG-43263] Qt now contains a built-in GPU driver
++ blacklist for Windows that disables the usage of desktop OpenGL with
++ some older cards that are known to be unstable with opengl32.dll.
++ - [QTBUG-44937] Support for QScreen::grabWindow() is now available on
++ embedded platforms (eglfs, linuxfb).
++ - Added QStyleHints::singleClickActivation to access whether the platform
++ expects item activation to occur on single clicks rather than double
++ clicks.
++ - [QTBUG-40034] QOpenGLWidget and QQuickWidget are now supported on iOS.
++
++ - Accessibility:
++ * [QTBUG-44479] Qt now reports text attributes correctly on Linux, so
++ ORCA+F now works properly in QTextEdit and other text controls.
++
++ - Accessibility / OS X:
++ * QTextEdit now properly reports to accessibility visual lines
++ (softlines) as lines, instead of whole paragraphs. This allows better
++ VoiceOver user experience when reading text line by line using arrows
++ up/down.
++ * Visual bounds returned by QTextEdit were singificantly improved; this
++ enables VoiceOver to draw properly positioned VoiceOver cursor.
++
++ - Image plugins:
++ * [QTBUG-37946][QTBUG-43563][QTBUG-45552][QTBUG-45865] An option has
++ been added to QImageReader to enable automatic application of EXIF
++ orientation. This behavior was default in Qt 5.4.1, but reverted in Qt
++ 5.4.2.
++
++ - QFontDatabase:
++ * Added QFontDatabase::isPrivateFamily()
++
++ - QImage:
++ * Added support for grayscale and alpha 8-bit formats which can also be
++ rendered to.
++
++ - QPainter:
++ * [QTBUG-35830] QPainter will no longer try to replace IntersectClip
++ with ReplaceClip if the paint engine is a QPicture.
++
++ - QPlatformSurfaceEvent:
++ * [QTBUG-42476][QTBUG-42483] Added event class QPlatformSurfaceEvent,
++ which is sent to QWindow and QOffscreenSurface when native surface is
++ created or about to be destroyed.
++
++ - QQuaternion:
++ * Added methods to convert a quaternion to/from Euler angles and to/from
++ rotation matrix.
++
++ - QScreen:
++ * Added devicePixelRatio property.
++
++ - QTextDocument:
++ * Support for searching with a QRegularExpression in a document has been
++ added.
++
++ - QWheelEvent:
++ * On OSX, trackpad wheel event phase transitions now occur in the order
++ ScrollBegin, ScrollUpdate, ..., ScrollEnd, ScrollUpdate, ...,
++ ScrollEnd, where the second batch of updates represents momentum
++ events (inertial scrolling).
++
++ - QWindow:
++ * [QTBUG-32956] lastWindowClosed will now be emitted even if
++ quitOnLastWindowClosed is not set.
++
++ - Windows:
++ * [QTBUG-43263] Introduced experimental feature allowing the user to
++ specify a GPU driver buglist with some additional keywords to chooose
++ the GL renderer backend depending on GPU.
++
++ - i18n:
++ * [QTBUG-43447] Fixed bug where layout direction did not switch
++ according to the instruction in the translation file.
++
++ - Text:
++ * [QTBUG-39286] Fixed position of underline on centered text when the
++ text layout's width is an even number.
++
++ QtNetwork
++ ---------
++
++ - [QTBUG-26295] Introduced libproxy backend for Unix platforms, enabled
++ automatically if the required dev package is present
++ - As some legacy ifdefs for OpenSSL 0.9.7 and 0.9.8f were removed, Qt
++ will no longer build with these versions. In addition, there is no
++ longer support for an OpenSSL library built with NO_TLSEXT.
++ - [QTBUG-26538] Fixed a bug that caused both QTcpSocket and QUdpSocket to
++ close the socket and lose any bound ports before connecting. Now
++ bind()/setSocketDescriptor() followed by connect() will retain the
++ original file descriptor.
++
++ - QLocalSocket:
++ * [QTBUG-16688] On Windows, waitForReadyRead now always waits for more
++ data, even if bytes are still in the buffer.
++
++ - QNetworkAccessManager:
++ * It is now possible to use TLS PSK ciphersuites when using HTTPS (or
++ similar protocols working over SSL).
++
++ - QSslSocket:
++ * [QTBUG-39077] It is now possible to use TLS PSK ciphersuites in client
++ sockets.
++ * A new SSL backend for iOS and OS X, implemented with Apple's Secure
++ Transport (Security Framework).
++
++ - SSL/TLS support:
++ * [QTBUG-18972] It is now possible to parse elliptic curve certificates.
++ * It is now possible to choose which elliptic curves should be used by
++ an elliptic curve cipher.
++
++ QtTest
++ ------
++
++ - QCOMPARE now pretty-prints QSizePolicy{,::Policy,::ControlType{,s}}.
++ - QtTest now prints an escaped version of QByteArrays that failed to
++ compare with QCOMPARE, instead of the hex dump.
++ - QTest::toString() can now be overloaded (instead of just specialized)
++ for custom types, and is now reliably found through argument-dependent
++ lookup (ADL).
++
++ QtWidgets
++ ---------
++
++ - Added QPlainTextEdit::createStandardContextMenu(QPoint) overload that
++ takes the position in document coordinates. This method enables the
++ actions that are sensitive to the given position eg. where the user
++ clicked.
++
++ - Accessibility / OS X:
++ * VoiceOver users of QTextEdit can now use mouse and touch exploration
++ on trackpad to point at text to have spoken to them.
++
++ - Layouts:
++ * [QTBUG-43099] Fixed a bug where spans sometimes didn't distribute
++ themselves to the last cells they covered.
++
++ - QAbstractItemView:
++ * Added iconSizeChanged signal.
++
++ - QAbstractScrollArea:
++ * [QTBUG-8315] A getter for the viewport margins has been added.
++
++ - QComboBox:
++ * A QComboBox does not reset itself any more when setting the same model
++ more than once.
++ * [QTBUG-43350] QComboBox will now reset its root model index when a new
++ model is set on it.
++
++ - QHeaderView:
++ * [QTBUG-21201] Auto-scroll the view when making extended row/column
++ selections.
++ * Default section size is now style-dependent by default.
++ * Added resetDefaultSectionSize().
++
++ - QMenu:
++ * [QTBUG-20094] QMenu now pick up how "sloppy" submenus behave from the
++ style.
++
++ - QOpenGLWidget:
++ * [QTBUG-40717] Added an UpdateBehavior flag to QOpenGLWidget and
++ enabled support for NoParitalUpdate for QOpenGLWidget. NoPartialUpdate
++ is the default update behavior for QOpenGLWidget.
++
++ - QSizePolicy:
++ * QSizePolicy::ControlTypes is now introspectable through QSizePolicy's
++ meta object.
++
++ - QToolButton:
++ * [QTBUG-23396] Fixed the double removal of ampersands.
++
++ - QTreeWidget:
++ * [QTBUG-40060] Restored Qt 5.1 behavior of QTreeWidgetItems with
++ ItemIsTristate to enable automatic management of the check state.
++ User-editable tristate checkboxes are now enabled by setting the new
++ flag ItemIsUserTristate.
++
++ ****************************************************************************
++ * Platform Specific Changes *
++ ****************************************************************************
++
++ - Removed BlackBerry PlayBook support.
++
++ Android
++ -------
++
++ - [QTBUG-43705] Fixed canonical path for nonexistent paths on some
++ devices.
++ - [QTBUG-38700] On devices with translucent system UI, Qt's windows are now
++ positioned to avoid overlapping it. This behavior can be
++ overridden in the application's AndroidManifest.xml.
++ - [QTBUG-45430] Fixed a bug that caused applications not to be resumable
++ after user changed language in system settings.
++
++ - QtCore / QTimeZone:
++ * [QTBUG-35908] Android timezones are now available in QTimeZone.
++
++ - QtWidgets:
++ * Enable QDockWidget window decorations.
++
++ - The QtDBus module is now disabled by default.
++
++ - Added support for arm64-v8a, x86_64, and mips64 with gcc 4.9.
++
++ OS X
++ ----
++
++ - [QTBUG-43999] QApplication::setWindowIcon now changes the icon for the
++ application in the dock.
++
++ - Text:
++ * [QTBUG-44708] Fixed appending text with a different writing system and
++ formatting to a latin ligature.
++
++ Windows
++ -------
++
++ - QMimeData:
++ * [QTBUG-17373] Added support for handling dropping of multiple mail
++ attachments, adding ;index=N to the mimetype string
++ application/x-qt-windows-mime;value="FileContents"
++
++ - Text:
++ * [QTBUG-44501] Fixed design metrics for text
++
++ X11/XCB
++ -------
++
++ - GLX and EGL code paths are now dynamically resolved, making it possible
++ for one build of a plugin to use both code paths. The default is to use
++ the GLX code path if available. This can be overridden by specifying
++ QT_XCB_GL_INTEGRATION=xcb_egl as an environment variable. Enable the
++ logging category qt.xcb.glintegration.debug to get debug log output of
++ what integration is used.
++ - [QTBUG-31762] QSystemTrayIcon now uses StatusNotifier D-Bus protocol
++ when the desktop environment supports it
++ - [QTBUG-40174][QTBUG-42985] If all QScreens (xcb outputs) are
++ disconnected while an application is running,
++ QGuiApplication::primaryScreen() will now return null until a screen is
++ connected again.
++
++ ****************************************************************************
++ * Compiler Specific Changes *
++ ****************************************************************************
++
++ - Qt 5.5 now unconditionally uses the "using" keyword. Compilers that do
++ not support this keyword are deprecated and will not be able to build
++ Qt. Previous versions of Qt may or may not compile, as no testing was
++ done to ensure it worked.
++ - Visual Studio: -Zm200 (an option to specify the precompiled header
++ memory allocation limit) is not added anymore by qmake to the compiler
++ calls. If you encounter an C1076 compiler error you might need to re-add
++ it in your .pro file.
++
++ ****************************************************************************
++ * Tools *
++ ****************************************************************************
++
++ configure & build system
++ ------------------------
++
++ - Added support for VS2015.
++ - [QTBUG-31814][OS X/iOS] Qt is now built with a relative RPATH.
++ - [VS2012+] Qt is now always built with C++11 with these compilers.
++ - [Windows] Added -static-runtime option.
++ - Added support for GCC/Clang -fsanitize= options.
++ - Enabled tslib autodetection by default.
++ - Added configure-time check for IPC support.
++ - [QTBUG-44690][QNX] Fixed NEON detection when cross-compiling on Windows.
++ - On-device compilation should work better on RaspPi and some other
++ devices now (use linux-g++ mkspec).
++ - configure -redo and config.status support spaces in arguments now.
++ - Qt can be now built in and installed to directories with spaces.
++ Note that source directories with spaces are still not supported.
++
++ qmake
++ -----
++
++ - [QTBUG-3069][Linux] Building with -rpath will now create DT_RUNPATH tags
++ instead of DT_RPATH, allowing LD_LIBRARY_PATH to override the rpath.
++ - [QTBUG-41917][VS] Fixed project generation when PRECOMPILED_SOURCE is
++ in a different directory than PRECOMPILED_HEADER.
++ - [QTBUG-42454][MinGW] Added handling of QMAKE_MANIFEST.
++ - [QTBUG-13496][MSVC] CONFIG+=no_batch is now automatically added when
++ multiple sources with the same base name exist.
++ - Added $$[QT_INSTALL_PREFIX/dev], etc. properties which reflect the
++ on-device locations of Qt (the -prefix, etc. passed to configure).
++ - Building under MSys is less problematic now.
++ - [QTBUG-37269] Fixed cross-compilation for Unix on Windows/MinGW.
++ - [QTBUG-8202][QTBUG-20566][QTBUG-44685] Fixed distclean targets.
++ - [QTBUG-43162][VS] Added DISTFILES support for Visual Studio projects.
++ - [QTBUG-41753][VS][WinPhone] Fixed MdilXapCompile deployment step.
++ - [QTBUG-44960][VS] Reworked .dll deployment. Added $$QMAKE_DLL_PATHS.
++ - [QTBUG-44823][MSVC] Fixed unreasonable values being passed in /VERSION.
++ Added $$VERSION_PE_HEADER to override the value.
++ - [WinRT] The icon handling was reworked/extended.
++ - [QTBUG-12711] Fixed infinite recursion on malformed .prl files.
++
++ ****************************************************************************
++ * Third-party libraries *
++ ****************************************************************************
++
++ - [QTBUG-44815][QTBUG-37660][QTBUG-44694][QTBUG-42443] ANGLE was updated
++ to Chromium branch 2356 (2.1~99f075dade7c).