blob: 83065f01c10da070181a3b01e5a640c825f3e9f0 [file] [log] [blame]
Qt 5.7.1 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.7.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.7 series is binary compatible with the 5.6.x series.
Applications compiled for 5.6 will continue to run with 5.7.
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.
This release contains all fixes included in the Qt 5.6.2 release.
****************************************************************************
* Important Behavior Changes *
****************************************************************************
- [QTBUG-45031] The NSURLConnection backend of QNetworkAccessManager has
been removed, since SecureTransport is the default SSL backend on iOS
and is enabled by default. This means that building with -no-openssl
-no-securetransport will no longer provide SSL capabilities on iOS.
- QtCore / QDataStream:
* [QTBUG-54022] Incomplete reads of Qt containers are now handled same
way as for primitive types, meaning that previous errors are latched.
****************************************************************************
* Library *
****************************************************************************
QtCore
------
- QLockFile:
* Fixed permissions on lock files on Unix to allow for adjustments via
umask.
- QMimeType:
* [QTBUG-50776] QMimeType::comment() now uses the default locale rather
than system locale, so that applications can control which language is
being used.
- QUrl:
* QUrl::resolved() no longer treats a URL with a scheme as a relative URL
if it matches this URL's scheme. For now it still treats "file:name.txt"
as relative for compatibility, but be warned that in Qt 5.8 it will no
longer consider those to be relative. Both isRelative() and RFC 3986 say
that such URLs are not relative, so starting from Qt 5.8, resolved() will
return them as is.
- QXmlStreamReader:
* Fixed a bug in the XML parser that prevented to load XML that
contained invalid characters for XML 1.0.
- QXmlStreamWriter:
* Fixed a bug that prevented the generation of valid XML files when
using encoding with 8 bit per character but not ASCII compatible.
QXMLStreamWriter generated XML markup using always ASCII in this case.
QtGui
-----
- QGuiApplication:
* [QTBUG-51703] Fixed a bug that would cause QGuiApplication::sync() to
be left undefined for Qt builds without session management support.
- QIconLoaderEngine:
* Fixed theme lookup for scalable entries
- QTextDocument:
* [QTBUG-48182] Fixed a bug that would return a wrong position when
searching backward from the end of the document.
- Text:
* [QTBUG-49452] Fixed a performance regression in Freetype engine that
was introduced in Qt 5.5.
* [QTBUG-53911] Fixed a crash that could happen if you were doing many
different text layouts with different fonts and superscript or
subscript alignment.
* [QTBUG-42033] Fixed bug where a QTextLayout with
ShowLineAndParagraphSeparators would modify the layout's input string.
* [QTBUG-54180] Fixed performance regression when rapidly switching
between a large set of fonts.
QtNetwork
---------
- QSslSocket:
* [QTBUG-55170] Fixed a bug in SecureTransport backend that would cause
a memory usage growth in case 'readBufferMaxSize' is set.
* [QTBUG-52975] Fixed a bug in SecureTransport backend where transmit
was using invalid SSL context and reporting (incorrectly) some irrelevant
errors as a result.
QtSql
-----
- [QTBUG-53969][QTBUG-53237] Fixed QSqlQuery::prepare value truncation
error when using UNSIGNED values in a MySQL database.
QtWidgets
---------
- QAbstractItemDelegate:
* [QTBUG-16469] Show localized detailed tooltips and "What's this?"
texts.
- QTreeView:
* [QTBUG-52793] Fixed a key navigation bug when the columns were
reordered.
****************************************************************************
* Platform-specific Changes *
****************************************************************************
Android
-------
- [QTBUG-50724] Added support for clang compiler
- [QTBUG-53511] Fixed CJK font resolution on Android 7.
FreeBSD
-------
- The freebsd-g++ mkspec was moved back and no longer requires the
"unsupported/" prefix, matching the FreeBSD ports tree, as FreeBSD 9.3
still defaults to using GCC. Users of GCC that did not previously use
the ports patch will need to adapt their build scripts and drop the
"unsupported/" prefix.
Linux
-----
- [QTBUG-54733] It is now possible to opt out from installing signal
handlers when running with eglfs and linuxfb by setting the
QT_QPA_NO_SIGNAL_HANDLER environment variable to a non-zero value.
- [QTBUG-55140] xcb with EGL and OpenGL ES, as well as eglfs with the
eglfs_x11 backend, are now supported on DRIVE CX boards when using the
linux-drive-cx-g++ device spec.
Windows
-------
- [QTBUG-41186] QWindow::fromWinId() may return 0 when passing invalid
window handles.
- [QTBUG-55595] Fixed crash when loading color fonts from data.
- [QTBUG-55097] Fixed rendering Adobe/Mozilla format color fonts with
other colors than black after Windows 10 Anniversary update.
- [QTBUG-54494] Fixed stretch when combined with either no or vertical
hinting preference or a device pixel ratio different from 1.
- [QTBUG-51024] Fixed height of text bounding box when using no or
vertical hinting preference, or when the device pixel ratio is
different from 1.
****************************************************************************
* Tools *
****************************************************************************
configure & build system
------------------------
- [QTBUG-35886][QTBUG-51417] Fixed Fontconfig vs. system FreeType
configuration.
- [QTBUG-43784][X11] Fixed detection of GLX with -qt-xcb.
- [QTBUG-51534][Windows] The configure.exe bootstrapping now prefers
cl over clang-cl, to avoid header incompatibility problems.
- [QTBUG-52940] Fixed missing plugins.qmltypes files in static builds.
- [QTBUG-52951] Fixed dynamic library support detection for platforms
without libdl.
- [QTBUG-53038] Fixed running of configure tests outside qtbase when
cross compiling on Windows (for example for Android).
- [QTBUG-53312] The flags supplied by the configure -D/-I/-L/-l options
are now applied after Qt's own flags. This helps in some cases when
the provided paths contain files which conflict with the Qt build.
- [QTBUG-53926] Fixed linkage of QML plugins in static prefix builds.
- [QTBUG-55011][Unix] Fixed -no-pkg-config being ignored by some
configure tests, which led to build failures later on.
- Fixed configure tests outside qtbase when $MAKEFLAGS contains the
-i flag.
- [Android] Some unused plugins are not built anymore.
- [MinGW] Added support for -separate-debug-info.
- [Unix] Added configure -no-opengles3 option.
- [Unix] Fixed MySQL detection/use on RHEL 6.6.
qmake
-----
- [QTBUG-41830] Fixed nested custom functions inheriting their callers'
arguments.
- [QTBUG-53895][MSVC] Started using separate PDB files for compiling
and linking.
- [QTBUG-54036][Darwin] Fixed installation of debug symbols.
- [QTBUG-54299] Various QMAKE_EXTRA_COMPILERS' .depends entries are now
appended to rather than overwritten.
- [QTBUG-54346][MSys/Apple] Fixed detection of QMAKE_DEFAULT_{INC,LIB}DIRS.
- [QTBUG-54550] Fixed access to freed memory in $$absolute_path().
- [QTBUG-54674] The obsolete -target xp is now properly rejected.
- [QTBUG-55183][nmake] _WINDLL is now automatically defined when building
a DLL, consistently with Visual Studio.
- [QTBUG-55505] Fixed build of projects with spaces in the source or build
path against static builds of Qt.
- [QTBUG-55649][QTBUG-55915][Xcode] Fixed support for Xcode 8.
- [QTBUG-56162][MinGW] Fixed -release -force-debug-info missing both
optimization and debug info.
- Fixed several cases where the error() function would not abort qmake.
- Interrupting a command run via system() will now abort qmake as well.
- The packagesExist() function will now warn when used when Qt was
configured with -no-pkg-config.
- [Android] The default compiler flags were adjusted to match newer
NDK versions.
- [Darwin] Fixed detection of QMAKE_DEFAULT_INCDIRS.
- [Darwin][make] Added support for building Xcode asset catalogs.