Qt Earth Mix - April 2011

Good day people!

Sorry for the delay, but we've been quite busy lately. As promised here comes our monthly repository release.
Highlights of this release are:

  • Optimisation of activation of signals in QObject.
  • Merge of most work of the Symbian native socket engine branch. This means that we have a new network stack for Symbian.
  • Support of QByteArray in QStringBuilder.
  • QtConcurrent is now working both with RVCT 2.2 and GCCE 4.4.1 on Symbian, but not with WINSCW, the compiler of Symbian emulator (and there is no plan to support it).
  • Note: for the Symbian developer on Windows, please go to tools/configure and rebuild configure.exe before building qt.

    Entry points for QtConcurrent were re-written and interfaces changed. This work was done in order to add support for QtConcurrent on Symbian, but ultimately it was noted that the changes lead to a leaner API and the change applies to all platforms.

    While we changed function signatures and entry points to QtConcurrent, this should not affect our binary interfaces, since the affected functions are inline templated forwarding functions. Applications compiled with the old interface should not be affected when running against an updated Qt. On the other hand, source compatibility should also be maintained, so that recompiling applications should be painless.

    If anyone out there was depending on or somehow directly using the address of such functions as:

    template <>
    int blockingFilteredReduced <int, std::vector <int>, int, MyReduceFunctor> (
    const std::vector <int> &,
    bool (*)(int),

    ... well, then, you had it coming :-) -- recompilation will likely fail. Still, the fix should be trivial, you'll have to identify the right function and update it.

    In all seriousness, we think the improved maintainability and platform support is a big benefit and we somehow doubt somebody is taking the address of the functions that changed signatures. We certainly hope it doesn't impact anyone.

  • As a reaction to fraudulent certificates issued from a compromised Certificate Authority ("Comodogate"), those certificates are blacklisted and a connection to a server using one of those certificates will result in an error.
  • There are plenty of merge requests there, these are the ones merged by our team:
    • MR-1011 - Cleanup / Leftovers of Win9x/VC6 support.
    • MR-1105 - QTBUG-15278 - QWidget::windowState gets out of sync (Win/Aero).
    • MR-1133 - Make QX11Info::isCompositingManagerRunning() reliable.
    • MR-1135 - X11: Fix window background pixmap initialization strategy.
    • MR-1149 - Fix QDateTime::toString for timeSpec() being Qt::UTC and Qt::offsetFromUTC.
    • MR-1157 - QTBUG-18374 - Fix compilations errors with STLport.
    • MR-1159 - tests/auto/qdatetime: always fails in Europe/London timezone.
    • MR-1162 - Changed Q_AUTOTEST_EXPORT macro into Q_GUI_EXPORT for QZipWriter class.
    • MR-1163 - Fix bug when catching exceptions in tests.
    • MR-2586 - move semun declaration to qcore_unix_p.h.
    • MR-2588 - QGraphicsItem::ItemStops[ClickFocusProgration|FocusHandling] must not interfer with touch event propagation.

    Thanks are due to our contributors: Milan Burda, Arnold Konrad, Jacopo De Simoi, Jens Georg, Cédric OCHS, Darryl L. Miles, Pavel Mogilevskiy, Marco Alanen, Konstantin Ritt, and Michael Hasselmann.

  • Reported bugs fixed:
    • QTBUG-5182/QTBUG-9070 - Add support for QFuture and QtConcurrent in Symbian.
    • QTBUG-18876 - QNetworkCookie::parseCookies() do not parse values containing whitespaces.
    • QTBUG-16123 - Full read buffer triggers infinite busy loop in QAbstractSocket.
    • QTBUG-17219 - Mac CPU while polling networks.
    • QTBUG-18772 - QDesktopServices::openUrl() doesn't handle URL encodings correctly.
    • QTBUG-18647 - Enable OpenVG for Symbian^3 makefile build system.
    • QTBUG-18338 - Blacklist fraudulent SSL certificates (see separate blog post).
    • QTBUG-18484 - Enable QtWebKit with symbian-gcce.
    • QTBUG-14939 - QLocalSocked::abort() does not abort.
    • QTBUG-4796 - Make QTemporaryFile unicode-safe.
    • QTBUG-18485 - OpenGL autodetection for Symbian.
    • QTBUG-17099 - Document keyboard locale information.
    • QTBUG-15421 - QDirIterator issue when using QDir::Hidden.
    • QTBUG-17092 - Provide endonym equivalent for QLocale::languageToString().
    • QTBUG-17550 - SSL connection succeeds with empty root CA certification store.
    • QTBUG-17986 - Memory leak when QEventLoop is used with an adopted native thread.
    • QTBUG-18149 - QFuture does not throw exceptions if called from destructors during stack unwinding.
    • QTBUG-18309 - QFtp crashes with SEGFAULT.
    • QTBUG-17921 - Regression in QDir::absoluteFilePath() when dir is set to resource path.

So sync to 43482fcfc106864f104f463002575c389d40b12f from earth-team/4.8 and enjoy all the goodies!

Blog Topics: