From kde-devel Wed Jun 16 19:09:55 2021 From: Nicolas Fella Date: Wed, 16 Jun 2021 19:09:55 +0000 To: kde-devel Subject: Re: Notice of withdrawal of CI services: KDevelop and KDE Connect Message-Id: <32274799-5cd1-552e-adb4-5f30411da108 () gmx ! de> X-MARC-Message: https://marc.info/?l=kde-devel&m=162387052221107 Hi Ben, On 16.06.21 20:28, Ben Cooksley wrote: > Hi all, > > The following is notice that I intend to withdraw CI services from the > following two KDE projects due to faults in their code or build system > which are having a significant adverse impact on the CI system and > negatively impacting on other projects: > > - KDevelop > - KDE Connect > > This withdrawal will be applied to all platforms. > > In the case of KDevelop, it has a series of unit tests which on > FreeBSD cause gdb to hang and consume an entire CPU core indefinitely. > This slows down builds for all other projects using that CI server, > and also prevents KWin tests from proceeding - completely blocking > it's jobs. This fault is in the debuggee_slow family of tests. > > As this issue has persisted for some time now despite being mentioned, > I require that the family of tests in question be disabled across all > platforms. > > In the case of KDE Connect, as part of it's configure process it runs > an external command that results in dbus-daemon being launched. This > process persists following the build and would only be cleaned up by > our tooling that runs tests. Should the compilation fail (as it does > currently) it will result in the CI builder being broken - which is > why we have had so many Windows builds fail lately. > > As this is an issue that has occurred previously, I require that the > configure time check which is launching dbus-daemon to be expunged > from KDE Connect. > > As a reminder to all projects, running commands that interact with > dbus-daemon or kdeinit is not permitted during configure or build time. > > Regards, > Ben Cooksley > KDE Sysadmin I think I know what causes the KDE Connect behavior. The CMake code calls 'ecm_find_qmlmodule(org.kde.people 1.0)', which results a call to 'qmlplugindump org.kde.kpeople 1.0' which causes parts of the KPeople code to be executed (PersonsModel in particular) which does some DBus things that then trigger dbus-daemon. As a stopgap solution to make the CI operational we can remove that ecm_find_qmlmodule call. In terms of a proper solution there was a recent effort to remove the mandatory DBus dependency from KPeople on Windows (https://invent.kde.org/frameworks/kpeople/-/merge_requests/7). Perhaps we should instead fully disable all DBus code in KPeople on Windows instead, given that the usefulness is questionable. Cheers Nico