[MIR] qtsystems-opensource-src

Bug #1552860 reported by Olivier Tilloy
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
qtsystems-opensource-src (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

This is a MIR for qtsystems-opensource-src, which is currently in universe.

1. Availability: the package has been in universe since Trusty, and it builds on all supported architectures.

2. Rationale: In Ubuntu Touch applications, the recommended way of enumerating input devices (physical keyboards, mice, touchpads, etc…) is the QInputDeviceInfo API. We would like to start using that API in webbrowser-app, which is in main.

3. Security: nothing to highlight, but the security team might want to acknowledge that. Note that a preliminary review was already done a couple of years ago, see Jamie’s comments at https://bugs.launchpad.net/ubuntu/+source/qtsystems-opensource-src/+bug/1217001/comments/10.

4. QA: the package comes with automated unit tests as well as manual tests. The unit tests are run as part of the package build. Bugs in ubuntu: https://bugs.launchpad.net/ubuntu/+source/qtsystems-opensource-src. The package is not in debian (see https://wiki.debian.org/Mobile/Ubuntu).

5. UI standards: N/A

6. Dependencies: all build and runtime dependencies are in main.

7. Standards compliance: complies with debian packaging standards.

8. Maintenance: actively maintained by Timo Jyrinki <email address hidden>.

9. Background information: package descriptions are meaningful.

Revision history for this message
Lorn Potter (lorn-potter) wrote :

Also maintained by me. I also maintain upstream.

Revision history for this message
Michael Terry (mterry) wrote :

I just gave this the quickest of looks, since it already has the older approved MIR (bug 1217001).

The patch skip_failing_tests.patch can be dropped now, right? We have systemd, so we have /etc/machine-id, which is why two of the tests were skipped. The third was skipped simply because it was failing? Let's confirm if it still fails and fix it if possible.

Changed in qtsystems-opensource-src (Ubuntu):
status: New → Incomplete
Revision history for this message
Olivier Tilloy (osomon) wrote :

I tried reverting the patch entirely and did a local build, which failed there:

QT_PLUGIN_PATH=/usr/lib/x86_64-linux-gnu/qt5/plugins LD_LIBRARY_PATH='/tmp/qtsystems-opensource-src-5.0~git20141206~44f70d99/lib:/usr/lib/x86_64-linux-gnu'${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} ./tst_qremoteserviceregister
********* Start testing of tst_QRemoteServiceRegister *********
Config: Using QtTest library 5.5.1, Qt 5.5.1 (x86_64-little_endian-lp64 shared (dynamic) release build; by GCC 5.3.1 20160225)
QWARN : tst_QRemoteServiceRegister::initTestCase() Service "RSRExampleService" ( "com.nokia.qt.rsrunittest" , "1.0" ) already registered
PASS : tst_QRemoteServiceRegister::initTestCase()
QWARN : tst_QRemoteServiceRegister::checkCreateEntryWithEmptyServiceName() QRemoteServiceRegister::registerService: service name, interface name and version must be specified
PASS : tst_QRemoteServiceRegister::checkCreateEntryWithEmptyServiceName()
PASS : tst_QRemoteServiceRegister::checkOperators()
QWARN : tst_QRemoteServiceRegister::checkPublish() Cannot connect to DBus
PASS : tst_QRemoteServiceRegister::checkPublish()
QWARN : tst_QRemoteServiceRegister::tst_instanceClosed() Cannot connect to DBus
QWARN : tst_QRemoteServiceRegister::tst_instanceClosed() Couldn't load service interface for "RSRExampleService"
FAIL! : tst_QRemoteServiceRegister::tst_instanceClosed() 'o' returned FALSE. ()
   Loc: [tst_qremoteserviceregister.cpp(242)]
PASS : tst_QRemoteServiceRegister::cleanupTestCase()
Totals: 5 passed, 1 failed, 0 skipped, 0 blacklisted
********* Finished testing of tst_QRemoteServiceRegister *********

Revision history for this message
Michael Terry (mterry) wrote :

So is that a real failure or just the test not being run under dbus? If it just needs dbus, maybe we can run the tests under dbus-run-session?

Revision history for this message
Olivier Tilloy (osomon) wrote :

Interestingly, a local build with all the original patches still fails (although differently):

QT_PLUGIN_PATH=/usr/lib/x86_64-linux-gnu/qt5/plugins LD_LIBRARY_PATH='/build/qtsystems-opensource-src-5.0~git20141206~44f70d99/lib:/usr/lib/x86_64-linux-gnu'${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} ./tst_qremoteserviceregister
********* Start testing of tst_QRemoteServiceRegister *********
Config: Using QtTest library 5.5.1, Qt 5.5.1 (x86_64-little_endian-lp64 shared (dynamic) release build; by GCC 5.3.1 20160225)
QWARN : tst_QRemoteServiceRegister::initTestCase() Service Framework:- Unable to open or create database at: /nonexistent/.config/Nokia/QtServiceFramework_5.5_user.db
FAIL! : tst_QRemoteServiceRegister::initTestCase() 'r' returned FALSE. (Cannot register RSRExampleService - /build/qtsystems-opensource-src-5.0~git20141206~44f70d99/tests/auto/serviceframework/qremoteserviceregister//xmldata/rsrexampleservice.xml)
   Loc: [tst_qremoteserviceregister.cpp(122)]
QWARN : tst_QRemoteServiceRegister::cleanupTestCase() Service Framework:- Unable to open or create database at: /nonexistent/.config/Nokia/QtServiceFramework_5.5_user.db
PASS : tst_QRemoteServiceRegister::cleanupTestCase()
Totals: 1 passed, 1 failed, 0 skipped, 0 blacklisted
********* Finished testing of tst_QRemoteServiceRegister *********

The test build was done in a clean xenial amd64 chroot.

Revision history for this message
Timo Jyrinki (timo-jyrinki) wrote :

Qt unit tests are very picky about the user environment, so it's not a surprise there might be a test failure when building locally instead of on a clean builder machine.

The two tests seems to run fine with dbus-run-session. I'm landing a re-enablement from https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/landing-062/+sourcepub/6183806/+listing-archive-extra

Revision history for this message
Timo Jyrinki (timo-jyrinki) wrote :

(it was landed the following day:

qtsystems-opensource-src (5.0~git20141206~44f70d99-0ubuntu8) xenial; urgency=medium

  * skip_failing_tests.patch: Re-enable two tests.
  * debian/rules: use dbus-run-session to run the tests.

 -- Timo Jyrinki <email address hidden> Tue, 08 Mar 2016 12:48:22 +0000
)

There's the one remaining disablement qservicemanager_ipc, the test still seems to fail. Notably we don't use the serviceframework module anywhere, though. qtsystems is essentially 3 modules packed into 1 source, of which we only use the qtsysteminfo.

Revision history for this message
Michael Terry (mterry) wrote :

Oh great then, thanks!

Changed in qtsystems-opensource-src (Ubuntu):
status: Incomplete → Fix Committed
Revision history for this message
Steve Langasek (vorlon) wrote :
Download full text (11.6 KiB)

Override component to main
qtsystems-opensource-src 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety: universe/libs -> main
libqt5publishsubscribe5 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety amd64: universe/libs/optional/100% -> main
libqt5publishsubscribe5 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety arm64: universe/libs/optional/100% -> main
libqt5publishsubscribe5 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety armhf: universe/libs/optional/100% -> main
libqt5publishsubscribe5 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety i386: universe/libs/optional/100% -> main
libqt5publishsubscribe5 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety powerpc: universe/libs/optional/100% -> main
libqt5publishsubscribe5 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety ppc64el: universe/libs/optional/100% -> main
libqt5publishsubscribe5 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety s390x: universe/libs/optional/100% -> main
libqt5serviceframework5 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety amd64: universe/libs/optional/100% -> main
libqt5serviceframework5 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety arm64: universe/libs/optional/100% -> main
libqt5serviceframework5 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety armhf: universe/libs/optional/100% -> main
libqt5serviceframework5 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety i386: universe/libs/optional/100% -> main
libqt5serviceframework5 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety powerpc: universe/libs/optional/100% -> main
libqt5serviceframework5 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety ppc64el: universe/libs/optional/100% -> main
libqt5serviceframework5 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety s390x: universe/libs/optional/100% -> main
libqt5systeminfo5 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety amd64: universe/libs/optional/100% -> main
libqt5systeminfo5 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety arm64: universe/libs/optional/100% -> main
libqt5systeminfo5 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety armhf: universe/libs/optional/100% -> main
libqt5systeminfo5 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety i386: universe/libs/optional/100% -> main
libqt5systeminfo5 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety powerpc: universe/libs/optional/100% -> main
libqt5systeminfo5 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety ppc64el: universe/libs/optional/100% -> main
libqt5systeminfo5 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety s390x: universe/libs/optional/100% -> main
qml-module-qtpublishsubscribe 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety amd64: universe/libs/optional/100% -> main
qml-module-qtpublishsubscribe 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety arm64: universe/libs/optional/100% -> main
qml-module-qtpublishsubscribe 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety armhf: universe/libs/optional/100% -> main
qml-module-qtpublishsubscribe 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety i386: universe/libs/optional/100% -> main
qml-module-qtpublishsubscribe 5.0~git20141206~44f70d99-0ubuntu10~13 in yakkety powerpc: universe/libs/optional/100% -> main
qml-module-qtpublishsubscribe 5.0~...

Changed in qtsystems-opensource-src (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.