[Development] Staging of qtdeclarative changes has been blocked while we try to unpin the qtbase SHA1

Rohan McGovern rohan.mcgovern at nokia.com
Mon Mar 12 23:45:53 CET 2012


Richard Moore said:
> On 12 March 2012 17:56,  <kent.hansen at nokia.com> wrote:
> > Besides flaky tests, we also have the general/recurring problem of changes going into qtbase that break qtdeclarative (and possibly/likely other modules). While I realize it's time-consuming for everyone to manually build and run the qtdeclarative tests (or entire qt5.git) when you're working on qtbase, please at least take the time to consider how your change might affect other modules. If you're unsure and/or would like someone else's opinion on the possible impact, feel free to send an email to this list, or ask on IRC. Thanks.
> 
> Do you have any idea of how many of these were due to QtDeclarative
> making assumptions that aren't part of the defined API, vs how many
> were changes in expected behaviour?

Here's the commits which were needed:

    http://codereview.qt-project.org/18941 - 406f741 Remove pin of qtbase for qtdeclarative.
      -> the one removing the pin, not actually resolving any test failures.

    http://codereview.qt-project.org/18909 - 16e29f3 Remove unneeded dependencies to QtWidgets and QtOpenGL
      -> I don't think this one resolves any test failures.

    http://codereview.qt-project.org/19656 - c787809 Mark presumed unstable test as insignificant.
      -> marks tst_qquickpixmapcache as insignificant, doesn't actually
         resolve the problem, so the real issue may not yet be understood

    http://codereview.qt-project.org/19552 - dda130f Fix MouseArea autotest.
    http://codereview.qt-project.org/19534 - 6cf36b2 Fix tst_qquicktextedit.
    http://codereview.qt-project.org/19427 - cb1ff7a Fix double click handler in QQuickItem.
      -> all of these were failing due to changes in double-click
         semantics, apparently a bug fix:

            commit b371f3f943703840d0dfbe30505018bcca06e260
            Author: Laszlo Agocs <laszlo.p.agocs at nokia.com>
            Date:   Tue Mar 6 16:09:09 2012 +0200

            Fix double click handling.

            Until now double clicking in Qt 5 resulted in the following sequence of mouse
            events: pressed, released, double clicked, released. This is wrong, the press
            belonging to the second button down is missing. In Qt 4 that pressed event is
            present.

         There were also some follow-up commits to this one, I am not
         sure exactly which one triggered the problems.

         Probably all of the failing tests were created or updated while
         qtbase had the buggy double-click behavior.  Then they started
         to fail when the bug was fixed in qtbase.

         It's still unclear to me if the actual behavior matches what is
         documented, e.g. http://doc.qt.nokia.com/5.0-snapshot/qwidget.html says
         "If the user double-clicks, the widget receives a mouse press
         event, a mouse release event and finally this event instead of
         a second mouse press event", vs Laszlo's comment in
         tst_qquickmousearea, "press, release, (click), press, double click,
         release".

    http://codereview.qt-project.org/19598 - cbb7f8b Skip test that accesses deleted QML engine
      -> apparently the test reads invalid memory, but doesn't actually
         crash on most platforms.  It might be that the qtbase changes,
         due to changing the layout of a few things in memory, caused it
         to start crashing on at least one platform.

    http://codereview.qt-project.org/19636 - 2553575 Fix flakiness in qquicklistmodel autotest
      -> the test was buggy, it had a race condition which may have been
         triggered by someone making some code faster, or perhaps
         reducing the amount of round trips through the event loop
         required for one tested condition to become true.



More information about the Development mailing list