summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJani Heikkinen <jani.heikkinen@qt.io>2017-05-05 09:27:04 +0300
committerLars Knoll <lars.knoll@qt.io>2017-05-17 13:43:03 +0000
commitfc874c2976b9e066879ff22e23e6e99a65d22dfc (patch)
treeb233a8d577abd9b995c264618c5ae15766c1c0c9
parentc745b8ecd464fe216d8e1f94bac426cfc89f233e (diff)
Add changes file for 5.9.0
Listing important changes and bug-fixes. Done-with: Thiago Macieira <thiago.macieira@intel.com> Done-with: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Done-with: Shawn Rutledge <shawn.rutledge@qt.io> Done-with: Timur Pocheptsov <timur.pocheptsov@qt.io> Change-Id: I147d6986c565b5adb41a6a3a18a5f1e82cfe9b64 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
-rw-r--r--dist/changes-5.9.0582
1 files changed, 582 insertions, 0 deletions
diff --git a/dist/changes-5.9.0 b/dist/changes-5.9.0
new file mode 100644
index 0000000000..3545ed411c
--- /dev/null
+++ b/dist/changes-5.9.0
@@ -0,0 +1,582 @@
+Qt 5.9 introduces many new features and improvements as well as bugfixes
+over the 5.8.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.9 series is binary compatible with the 5.8.x series.
+Applications compiled for 5.8 will continue to run with 5.9.
+
+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.
+
+****************************************************************************
+* Important Behavior Changes *
+****************************************************************************
+
+ - [QTBUG-48658][QTBUG-56306] The linuxfb and bsdfb platform plugins now
+ follow the behavior of eglfs by making the first window fullscreen. This
+ provides consistency and avoids applications having to make their
+ windows match the screen size manually. The new behavior can be disabled
+ by setting the environment variable QT_QPA_FB_FORCE_FULLSCREEN=0.
+ - [QTBUG-59391] A QVariant containing a std::nullptr_t is now streamable
+ to/from QDataStream.
+ - Whitespace inside identifiers in logging rule files is not ignored
+ anymore. That is, "[my category]" and "[mycategory]" are now two different
+ categories.
+ - [QTBUG-59849] QSysInfo::productType() and QFileSelector behavior on
+ macOS was restored to match what Qt used to return in version 5.7.0 and
+ earlier. The behavior found in Qt 5.6.2, 5.7.1 and 5.8.0 is removed.
+
+ - QTouchEvent
+ * Touch point ids are now unique even between different devices. As a
+ consequence of that, you cannot anymore assume that
+ QTouchEvent::TouchPoint::id has the same value as given by the native
+ platform nor the same value as given by synthesized touch points.
+
+****************************************************************************
+* General Notes *
+****************************************************************************
+
+Deprecation Notice
+------------------
+
+ - QSysInfo::windowsVersion() and QSysInfo::macVersion() are deprecated and
+ are replaced by the newly introduced class QOperatingSystemVersion.
+ - [QTBUG-57288] Removed support for WinRT/Windows Phone 8.1.
+ - Support for CMake < 3.1 is deprecated and will be removed in Qt 5.10.
+
+Future Compatibility Notice
+---------------------------
+
+ - [QTBUG-59849] The identifiers that QSysInfo::productType() and
+ QFileSelector will use to identify macOS systems will change in Qt 6.0
+ to match the Apple naming guidelines which will be current then.
+
+Potentially Source-Incompatible Changes
+---------------------------------------
+
+ - The internal Q_COMPILER_UNICODE_STRINGS macro is now defined if the
+ compiler supports charNN_t, even if the standard library does not. To
+ check for availability of std::uNNstring, use the new
+ Q_STDLIB_UNICODE_STRINGS macro.
+
+Third-Party Code
+----------------
+
+ - Sqlite was updated to version 3.16.1.
+ - libpng was updated to version 1.6.28.
+ - Bundled HarfBuzz-NG copy updated to 1.4.1
+ - Gradle wrapper 3.4.1 was added as a third-party component (see
+ src/3rdparty/gradle). The code is licensed under Apache License 2.0, and is
+ used to create Android packages.
+ - PCRE 8.39 (src/3rdparty/pcre) was removed as a third-party component.
+ - PCRE 2 10.22 was added in src/3rdparty/pcre2 as a third-party
+ component. The code is licensed under the BSD 3-clause "New" or "Revised"
+ License, and is required by QRegularExpression (at least version 10.20).
+
+****************************************************************************
+* Library *
+****************************************************************************
+
+QtCore
+------
+
+ - QProcessEnvironment is now available on iOS, tvOS, watchOS, and VxWorks.
+ - [QTBUG-57715] QCoreApplication::applicationVersion now defaults to an
+ appropriate platform-specific value. On Windows, it defaults to the
+ PRODUCTVERSION parameter of the VERSIONINFO resource for classic desktop
+ apps, and the version attribute of the application package manifest for
+ Univeral Windows Platform apps. On Apple Platforms (macOS, iOS, tvOS,
+ watchOS), it defaults to the CFBundleVersion property of the information
+ property list (Info.plist) file. On Android, it defaults to the
+ android:versionName attribute of the AndroidManifest.xml manifest
+ element. On other platforms, the default remains an empty string.
+ - Added QStaticByteArrayMatcher.
+ - Added new qfloat16 class.
+ - QStringLiteral is now guaranteed to be evaluated at compile-time. The
+ last platform (QNX) to use the QString::fromUtf8() fallback has been
+ ported to allocate the string data statically, too.
+
+ - Event loop:
+ * [QTBUG-33489][QTBUG-48717] QCoreApplication::flush() is now
+ deprecated. Use QCoreApplication::processEvents() and
+ QCoreApplication::sendPostedEvents() instead.
+
+ - QByteArray:
+ * Added toHex() overload to insert a separator character between the hex
+ bytes.
+
+ - QChar:
+ * Disambiguated comparisons with nullptr constants such as '\0', which
+ 5.8.0 broke. As a consequence, QChar<->int comparisons are no longer
+ deprecated, as this was a failed attempt at fixing the ambiguity.
+
+ - QCryptographicHash:
+ * [QTBUG-59770] QCryptographicHash now properly calculates SHA3 message
+ digests. Before, when asked to calculate a SHA3 digest, it calculated
+ a Keccak digest instead.
+
+ - QDataStream:
+ * Added operator<< and operator>> overloads that take std::nullptr_t, to
+ facilitate generic code.
+ * Added operator<< and operator>> for streaming QFlags into and out of
+ QDataStreams.
+
+ - QDateTime:
+ * [QTBUG-52284][QTBUG-56397][QTBUG-56460][QTBUG-56345] Fixed a number of
+ bugs related to handling of timezone offsets close to or during daylight
+ savings changeovers, as well as timezones changing their standard
+ offset.
+ * [QTBUG-57298][QTBUG-57320] Fixed the handling of time zones in the
+ toString() overload taking Qt::TextDate.
+
+ - QDir:
+ * Fixed a bug that caused QDir::mkpath() to create the wrong directory
+ if the requested path contained a symbolic link and "../".
+ * Added isEmpty(), that can help determining if a directory listing would
+ be empty.
+
+ - QFileInfo:
+ * [QTBUG-48306] Made sure that all file lifecycle times are in local
+ time. This was probably true before, but is now explicit.
+
+ - QFileSelector:
+ * [QTBUG-51230] Removed the requirement for an unused default base file
+ in case you want to load only a variant.
+
+ - QFlags:
+ * Added operator<< and operator>> for streaming QFlags into and out of
+ QDataStreams.
+
+ - QHash / QMultiHash:
+ * [QTBUG-60395] Fixed a bug that caused operator== to fail in the presence
+ of duplicated keys.
+
+ - QLocale:
+ * Additional flags in QLocale::NumberOption allow generating strings
+ from doubles in accordance to EcmaScript's Number.toPrecision(n).
+ * Qt functions now always use the system time zone on Apple platforms,
+ the same that low-level C APIs like localtime() does. Previously,
+ converting dates and times to strings would use the "default" time
+ zone (which is almost always the same as the "system" time zone but
+ could be changed with the Apple API).
+
+ - QLockFile:
+ * [QTBUG-49640] Fixed a bug that caused QLockFile not to recognize a
+ stale lock file if the machine's hostname contained non-US-ASCII
+ characters, on Unix. A Windows fix is still pending.
+ * Fixed a deadlock occurring if a corrupted lock file's modification
+ time is in the future.
+
+ - QMetaObject:
+ * [QTBUG-60185] Fixed crash in QMetaObject::invokeMethod() and
+ QMetaMethod::invoke() with QueuedConnection and types whose metatype gets
+ automatically registered.
+
+ - QObject:
+ * QObject::dumpObjectInfo and QObject::dumpObjectTree are now fully
+ functional even in a non-debug build of Qt.
+ * QObject::dumpObjectInfo and QObject::dumpObjectTree now have const
+ overloads.
+ * Added a startTimer() overload taking std::chrono values.
+ * [QTBUG-58054] Fixed an incompatibility with using noexcept functions as
+ connect() targets in C++17 mode.
+
+ - QSettings:
+ * [QTBUG-34919] Added proper support for system-wide configuration file
+ lookup based on XDG spec (XDG_CONFIG_DIRS) on Unix based systems.
+ * [QTBUG-58531] Fixed data corruption when reading byte arrays on macOS.
+
+ - QSharedPointer:
+ * [QTBUG-49824] Fixed undefined behavior when creating an object with
+ QSharedPointer::create() and its constructor throws an exception.
+
+ - QStorageInfo:
+ * Added QStorageInfo::subvolume(), which returns the name of the
+ subvolume of a volume that was mounted, if one was detected. This is
+ currently implemented only for btrfs on Linux.
+
+ - QString:
+ * toLocal8Bit() now preserves nullness of the input QString (outputs
+ null QByteArray).
+ * QString::null is now deprecated. When used to construct a QString, use
+ QString() instead. When used to compare to a QString, replace with
+ QString::isNull().
+
+ - QStringRef:
+ * toLocal8Bit() and toLatin1() now preserve nullness of the input
+ QStringRef (output null QByteArrays).
+
+ - QThreadPool:
+ * The cancel() function suffers from several subtle issues and has been
+ replaced with a new tryTake() function.
+
+ - QUrl:
+ * The temporary compatibility in QUrl::resolved() that treated the base
+ URL as relative if its scheme matched the current URL's scheme has
+ been removed.
+ * [QTBUG-60364] Fixed a bug that caused certain domain names that look
+ like Internationalized Domain Names to become corrupt in decoded forms
+ of QUrl, notably toString() and toDisplayString().
+
+ - QVarLengthArray:
+ * Fixed a bug involving appending an item already in the container to
+ the container again.
+ * Added rvalue overloads of append() and push_back().
+
+ - QVariant:
+ * [QTBUG-56073] Fixed a bug that caused wrong results for comparisons of
+ QVariants containing either NaN or infinite numbers.
+ * Can now convert QUuid to and from QByteArray, not just QString.
+ * [QTBUG-58296] isNull() now returns true if the QVariant contains nullptr.
+
+QtGui
+-----
+
+ - OpenGL:
+ * [QTBUG-55496] QOpenGLShaderProgram now offers a built-in program binary
+ disk cache for systems with OpenGL ES 3.x or GL_ARB_get_program_binary.
+ This can lead to significant increases in performance when it comes to
+ application startup times for example. Usage is opt-in for direct C++
+ users of the class, however Qt's own main users of shaders, including Qt
+ Quick and QPainter's OpenGL engine, are migrated to use the new,
+ cache-enabled APIs. Opting out on application level is always possible
+ via Qt::AA_DisableShaderDiskCache.
+
+ - QIcon:
+ * [QTBUG-49820] Implemented support for Scale directory key according to
+ Icon Theme Spec. Icons created via QIcon::fromTheme() now have high
+ DPI support by specifying the Scale in the appropriate entry of the
+ relevant index.theme file.
+
+ - QImage:
+ * A new method reinterpretAsFormat() is has been added to change the
+ format of a QImage without converting the data.
+
+ - QMatrix4x4:
+ * operator*=() now calculates the correct result even if the RHS and LHS
+ are the same object.
+
+ - QPA:
+ * QPlatformScreen: Added an API to list available modes for a screen,
+ that is resolution and refresh rate.
+ * [QTBUG-58383] The function createForeignWindow() has been added to
+ QPlatormIntegration and is now responsible for creating foreign
+ windows. The function isForeignWindow() in QPlatformWindow has been
+ added, and platforms should implement this to return true for windows
+ created by createForeignWindow().
+
+ - QPainter:
+ * [QTBUG-28851] Fixed fills of negatively sized QRects.
+
+ - QRgba64:
+ * The default constructor on Clang and GCC builds now no longer
+ initializes with 0s, but leaves the value uninitialized. This is
+ consistent with MSVC behavior and pre-C++11 behavior of GCC and Clang.
+
+ - QScreen:
+ * Added manufacturer, model and serialNumber properties.
+
+ - QTextLine:
+ * Fixed a possible undefined behavior in the calculation of glyph right
+ bearing when a QTextLine layout is performed.
+
+ - QTouchEvent:
+ * TouchPoint::rect(), sceneRect() and screenRect() are deprecated; a
+ touchpoint is now modeled as an ellipse centered on a point, so please
+ use pos(), scenePos(), screenPos(), and ellipseDiameters() instead.
+ * QTouchEvent::TouchPoint::id values are now unique even between
+ different devices.
+
+ - QWindow:
+ * [QTBUG-58383] The "_q_foreignWinId" dynamic property is no longer set
+ nor read.
+
+ - Text:
+ * [QTBUG-56538] Added QTextDocument::toRawText() function.
+ * [QTBUG-48005] Fixed clipping errors and too small bounding rects for
+ some right-to-left text.
+ * [QTBUG-57241] Fixed crash for very tall glyphs
+
+QtNetwork
+---------
+
+ - The connect timeout from QAbstractSocket is now configurable through
+ QNetworkConfiguration.
+ - Added redirects policy to QNAM.
+ - Added HTTP Strict Transport Security to QNAM.
+
+ - Bearer management:
+ * [QTBUG-56228][QTBUG-52988] Fixed a bug that could cause a crash on
+ application exit, depending on the order of destruction of the
+ QCoreApplication object and the QtDBus manager thread.
+
+ - QHostAddress:
+ * QHostAddress is now implicitly shared.
+ * Added operator!=(SpecialAddress, QHostAddress).
+
+ - QSslSocket:
+ * Fixed connection to international domains (IDN) by normalizing to
+ ASCII equivalent before comparing the host name in the certificate.
+ * [QTBUG-56102] Allow QSslSocket (Secure Transport back-end) to use a temporary
+ keychain on macOS instead of a default one; this can be enabled via a special
+ environment variable QT_SSL_USE_TEMPORARY_KEYCHAIN (this feature is disabled
+ by default).
+ * [QTBUG-60233] QSslSocket (Secure Transport back-end) now respects CA
+ certificates set in QSslConfiguration (before was always implicitly using
+ the built-in anchor certificates in addition to a user provided configuration).
+ * [QTBUG-59480] Added a missing cipher (Secure Transport).
+ * [QTBUG-59930] Fixed spurious socket notifications in QCFSocketNotifer.
+ * [QTBUG-58214] Fixed spurious socket notifications on Windows.
+
+QtTest
+------
+
+ - QUuids are now printed on failure.
+ - Added QTest::addRow(), which is like newRow(), but can take printf-style
+ formatted strings.
+
+QtWidgets
+---------
+
+ - [QTBUG-26116] QWidget now has a tabletTracking property, analogous to
+ mouseTracking, which will enable TabletMove events while the stylus is
+ hovering, even if no button is pressed. This allows applications to show
+ feedback based on the other tablet event properties such as rotation and
+ tilt.
+
+ - Input:
+ * [QTBUG-42074][QTBUG-57003] Characters in the Unicode Private Use Area, as
+ well as zero-width joiners and zero-width non-joiners, are now accepted
+ as input in QLineEdit and QTextEdit.
+
+ - Qt::WA_WindowPropagation:
+ * [QTBUG-59106] Locale is now propagated consistently, along with font and
+ palette, within the widget hierarchy. Previously, setLocale() propagated
+ the new locale from parents to children (recursively) but new children
+ didn't inherit from their parents.
+
+ - QColorDialog:
+ * [QTBUG-58424] Fixed long standing bug that prevented custom colors in
+ QColorDialog to be stored in the settings.
+
+ - QDialog:
+ * [QTBUG-6018][QTBUG-12156][QTBUG-14430] Fixed a bug where accessing the
+ result of QDialog's result could yield an incorrect value in some
+ situation like using it as a delegate for item views.
+
+ - QErrorMessage:
+ * Critical (QtCriticalMsg) and informational (QtInfoMsg) messages are now
+ displayed properly. Previously, they appeared as if they were debug
+ (QtDebugMsg) ones.
+
+ - QFormLayout:
+ * [QTBUG-58693][QTBUG-15990] The functions takeRow() and removeRow(),
+ new in 5.8.0, now take and remove the correct row.
+
+ - QMacStyle:
+ * [QTBUG-57470] PE_IndicatorMenuCheckMark now looks for State_On instead of
+ the State_Selected to set its highlighted state. Its color is picked from
+ the style option palette.
+
+ - QPixmapStyle:
+ * Now handles progress bars with minimum != 0 correctly.
+
+ - QSizePolicy:
+ * Added transposed() method.
+
+ - QSystemTrayIcon:
+ * [QTBUG-49283] Support for custom icons in showMessage() was added.
+
+ - QTextEdit:
+ * [QTBUG-59196] Fixed initial char format of input method text as it is
+ in pre-edit mode.
+
+****************************************************************************
+* Platform-specific Changes *
+****************************************************************************
+
+Android
+-------
+
+ - [QTBUG-44697] Removed old work-around which was causing OpenGL shader
+ compilation to fail on updated Android emulators.
+ - QTouchEvent::TouchPoints have correct ellipseDiameters() and rotation().
+
+XCB/X11
+-------
+ - [QTBUG-60389] Every QTouchEvent includes up-to-date keyboard modifiers.
+ - [QTBUG-59415] Every QTabletEvent includes up-to-date keyboard modifiers.
+
+Linux
+-----
+
+ - Added an option to switch from mailbox to FIFO mode in eglfs' EGLStream
+ backend. This is done by setting the environment variable
+ QT_QPA_EGLFS_STREAM_FIFO_LENGTH to a >= 1 value, the desired length of the
+ FIFO queue.
+ - [QTBUG-57411] Added support for cross-compilation for the MIPS CI20.
+ - Added support for cross-compilation targeting 64-bit Jetson TX1 systems.
+ - Added support for cross-compilation targeting Renesas R-Car H2 (Lager)
+ systems.
+ - The Raspberry Pi 3 device specs have been renamed from linux-rpi3-* to
+ linux-rasp-pi3-* in order to follow the pattern of the RPi 1 and 2 specs.
+ - [QTBUG-57980] Added support for specifying the primary screen in the
+ JSON config file in QT_QPA_EGLFS_KMS_CONFIG when running on DRM/KMS with
+ eglfs.
+ - The evdevtouch plugin now has the option to apply filtering and
+ prediction. Enabled by passing "filtered" as an argument. Prediction can
+ be specified by passing "prediction=X" as an argument, where X is in
+ milliseconds.
+
+ - linuxfb:
+ * [QTBUG-56306] Added experimental support for DRM dumb buffers. Enable
+ by setting the environment variable QT_QPA_FB_DRM to 1.
+
+macOS
+-----
+
+ - Extra mouse buttons are now correctly be mapped to correct Qt::MouseButton
+ values.
+
+ - Accessibility:
+ * [QTBUG-39008][QTBUG-54776][QTBUG-56043][QTBUG-57146] A common crash in
+ accessibility on macOS was fixed.
+
+Solaris
+-------
+
+ - [QTBUG-56293] Support for the Illumos distribution OpenIndiana (release
+ "Hipster") has been added. This is a community-supported partial port.
+
+Windows
+-------
+
+ - Support for Visual Studio 2017 has been added.
+ - Fixed frameMargins for WM_NCCALCSIZE when handled inside with
+ QAbstractNativeEventFilter.
+ - [QTBUG-55510][QTBUG-48242] Windows are now automatically resized when they
+ are moved on a screen to adapt to the new pixel ratio.
+ - [QTBUG-58446] Fixed a bug that caused applications to crash with
+ "Illegal instruction" faults when compiled with Visual Studio and run on
+ some older processors.
+ - [QTBUG-57023] Fixed a bug that caused QFile to create files with
+ truncated names if the file name was invalid. Now, QFile::open correctly
+ fails to create such files.
+
+ - PDF:
+ * [QTBUG-58954] Fixed a bug in PDF output when using high-dpi scaling
+ which was causing the display of warnings when opening the file in
+ Adobe Reader.
+
+****************************************************************************
+* Tools *
+****************************************************************************
+
+moc
+---
+
+ - [QTBUG-59351] Fixed parsing errors in presence of C++14 digit separators.
+ - Added Support for C++17 nested namespaces
+ - Move-only types are now supported as return types of signals and slots.
+
+configure & build system
+------------------------
+
+ - [QTBUG-30083] Generalized command line overrides of installation
+ paths of external dependencies; see configure -help. Use configure
+ -list-libraries to find about known libraries.
+ - [QTBUG-42937][iOS] Added support for the configure -shared flag.
+ - [QTBUG-56225] Re-introduced creation of config.summary.
+ - [QTBUG-57908][QTBUG-59062] Fixed parsing of configure --xxx options.
+ - [QTBUG-57656][macOS] Fixed installation of header-only modules like
+ QtUiPlugin in framework builds of Qt.
+ - [QTBUG-58321] Switching to a different qmakespec for user projects will
+ now properly enable C++11 support if necessary.
+ - [QTBUG-58411] Added configure -list-features option. This is useful
+ for finding unnecessary features to disable with -no-feature-XXX.
+ - [QTBUG-58511] Fixed QMAKE_CXXFLAGS, etc. assignments on the configure
+ command line being ignored when building bootstrapped Qt tools while
+ not cross-building (in cross-builds, they are intentionally ignored).
+ - [QTBUG-60016] configure will now refuse to run if it finds variables
+ in its environment which are known to cause trouble.
+ - [QTBUG-60382] Fixed query of library paths from pkg-config.
+ - Added possibility to merge ANGLE's libEGL and libGLESv2 into QtANGLE;
+ configure option -combined-angle-lib.
+ - [Windows] The -no-rtti configure option was removed, as Qt fails
+ to build under that condition. To disable RTTI in user code, add
+ CONFIG+=rtti_off to your project file.
+ - [GCC] Debug builds of Qt are now optimized with -Og if available;
+ use -no-optimize-debug to disable. This is also applicable to user
+ projects; add CONFIG+=optimize_debug to your project file.
+ - Added possibility to optimize release builds for size instea of speed;
+ configure option -optimize-size.
+
+qmake
+-----
+
+ - [QTBUG-51598] Libs.private is now written to .pc files only when building
+ static libraries.
+ - [QTBUG-55279] Static plugins are now imported also into dynamic libraries,
+ not only executables. Various other improvements to static linking.
+ - [QTBUG-56965][Darwin] Fixed overriding QMAKE_*_DEPLOYMENT_TARGET from
+ within project files.
+ - [QTBUG-57343] Fixed execution of extra compilers' depend_commands in build
+ directories containing shell meta characters in their names,.
+ - [QTBUG-57276] Fixed QMAKE_PRE_LINK (always) and QMAKE_POST_LINK (in one
+ case) being ignored when building static libraries for Unix.
+ - [QTBUG-57435][VS] Fixed capitalization of <PlatformToolset> tags in the
+ generated vcxproj files.
+ - [QTBUG-57694][VS] Fixed bogus ToolsVersion attributes in the generated
+ vcxproj files.
+ - [QTBUG-57914][VS] Fixed handling of RC_FILE when generating single-
+ configuration vcxproj files.
+ - [QTBUG-59630][VS] Fixed uninitialized value of GenerateDebugInformation,
+ which was particularly bad if DebugFastLink was emitted for VS < 2015.
+ - [QTBUG-58710][MSVC/nmake] Fixed overlong lines in response files generated
+ for link.exe and lib.exe.
+ - [QTBUG-57502][Darwin] Added support for launch images in asset catalogs.
+ - [QTBUG-58126] Fixed the target compiler's default include and library paths
+ interfering with the build of host tools when cross-building.
+ - [QTBUG-58764] Fixed building of moc'able files with a Qt installation
+ in a path containing spaces.
+ - [QTBUG-58857] Added the ability to use CONFIG+=no_moc_predefs to suppress
+ the collection of the compiler's predefined macros for moc's use.
+ - [QTBUG-59004][Windows] '(n)make install' will now copy the timestamps of
+ the installed files, like it was already done on Unix.
+ - [QTBUG-59319] Fixed $$shadowed() function for the case where the source
+ tree lives in a symlinked or substituted path.
+ - [QTBUG-59779][Android][MinGW] Fixed CONFIG+=separate_debug_info.
+ - [QTBUG-38782][iOS] Added support for setting the Xcode development team
+ and provisioning profile.
+ - [QTBUG-58754][iOS] Fixed handling of bitcode.
+ - [Darwin] Binaries now automatically get @executable_path/Frameworks
+ added to RPATH, and libraries additionally @loader_path/Frameworks.
+ Suppress with CONFIG+=no_default_rpath.
+ - [Darwin][Xcode] QMAKE_BUNDLE_DATA now supports embedding Frameworks
+ and PlugIns.
+ - [macOS] Support for universal binaries has been re-introduced.
+ - Added the command line options -early and -late, plus -before (which is
+ the default) for symmetry with -after.
+ - The $$prompt() function will now exit qmake upon EOF on stdin.
+ - The touch() function now uses nanosecond precision if available.
+ - [MSVC] Qt now has a common mkspec for all Visual Studio versions, called
+ "win32-msvc". The old names which contained the version number are now
+ gone (but qmake scopes based on the old names continue to work).
+ In qmake project files, the version of the compiler can be obtained from
+ the MSC_VER and MSVC_VER variables (for example, for Visual Studio 2015,
+ those contain the values 1900 and 14.0, respectively). Those variables
+ are also available with the Intel compiler (win32-icc) and with Clang
+ (win32-clang-msvc).
+ - [Windows] The win32-clang-msvc qmakespec will now adjust the emulated
+ MSVC version to match that of the cl.exe found in PATH.
+ - [Windows] Fixed make 'install' targets to be idempotent.
+ - [Windows] '(n)make install' will not fail on file names containing the
+ plus sign any more.
+ - Numerous obsolete qmakespecs have been pruned.