Excessive tests in Ruqola / dependencies not built as part of the Craft caches

Ben Cooksley <[email protected]> Thu, 16 Jul 2026 23:35:05 +1200
Newsgroups gmane.comp.kde.devel.core,gmane.comp.kde.devel.general
Message-ID <CA+XidOH+U66h20obNnrNEUws3RCPbw0cAqoOW-4guTE+hx-0+w@mail.gmail.com>
--0000000000008df49b0656b8d5e0
Content-Type: text/plain; charset="UTF-8"

Hi Laurent, all,

Over the past week or two Sysadmin has received a number of complaints
regarding a lack of CI builder availability, primarily from those who work
on Plasma. Investigation has revealed that Ruqola appears to use a
disproportionately high amount of CI time compared to the size of the
project and it's activity.

This appears to be driven by the fact that Ruqola has a large number of
tests that do not take very long to execute (700 or so tests, yet done in 6
minutes - with many of these being less than 1 second to run). Given that
every single one of these unit tests needs to have automoc / compiler /
linker run on it i'd suggest that similar tests be merged into the same
compilation unit (you can run the individual tests, but keep similar tests
together in the same unit test). This would also explain why the build time
on Windows is significantly longer, as NTFS does not perform well when
compared to Linux file systems, even on NVMe storage.

FreeBSD also has 8 tests failing (timing out, with a 1 minute timeout) and
Windows has three tests failing with timeout.

If the Ruqola developers could please merge their unit tests into a smaller
number of unit tests and look into the broken unit tests as a priority that
would help your fellow KDE Developers by reducing the wastage of CI time.

On the Craft based builds, Ruqola also uses a stable version of a
dependency (ktextaddons) that is not in the Craft cache. Projects making
use of Craft CD builds should review their blueprints and ensure where-ever
possible that their dependencies are all in the list of projects built in
the shared cache. In the case of KTextAddons, adding it to the cache should
save ~10 minutes on Windows and ~3-4 minutes on Linux (Appimage) per
pipeline run.

Details on the shared cache can be found at
https://invent.kde.org/sysadmin/craft-ci. A merge request to correct this
oversight as well as any other project it uses (Pulseaudio also appears to
be a candidate) would be appreciated .
Other projects using Craft CD builds should please review their Blueprints
as well for similar oversights.

Thanks,
Ben

--0000000000008df49b0656b8d5e0
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hi Laurent, all,<div><br></div><div>Over the past week or =
two Sysadmin has received a number of complaints regarding a lack of CI bui=
lder availability, primarily from those who work on Plasma.=C2=A0<span styl=
e=3D"background-color:transparent">Investigation has revealed that Ruqola=
=C2=A0appears to use a disproportionately high amount of CI time compared t=
o the size of the project and </span>it&#39;s<span style=3D"background-colo=
r:transparent"> activity.</span></div><div><br></div><div>This appears to b=
e driven by the fact that Ruqola=C2=A0has a large number of tests that do n=
ot take very long to execute (700 or so tests, yet done in 6 minutes - with=
 many of these being less than 1 second to run).=C2=A0<span style=3D"backgr=
ound-color:transparent">Given that every single one of these unit tests nee=
ds to have automoc / compiler / linker run on </span>it i&#39;d<span style=
=3D"background-color:transparent"> suggest that similar tests be merged int=
o the same compilation unit (you can run the individual tests, but keep sim=
ilar tests together in the same unit test).=C2=A0</span><span style=3D"back=
ground-color:transparent">This would also explain why the build time on Win=
dows is significantly longer, as NTFS does not perform well when compared t=
o Linux file systems, even on NVMe storage.</span></div><div><br></div><div=
>FreeBSD also has 8 tests failing (timing out, with a 1 minute timeout) and=
 Windows has three tests failing with timeout.</div><div><br></div><div><di=
v>If the Ruqola=C2=A0developers could please merge their unit tests into a =
smaller number of unit tests and look into the broken unit tests as a prior=
ity that would help your fellow KDE Developers by reducing the wastage of C=
I time.</div></div><div><br></div><div>On the Craft based builds, Ruqola=C2=
=A0also uses a stable version of a dependency (ktextaddons) that is not in =
the Craft cache.=C2=A0<span style=3D"background-color:transparent">Projects=
 making use of Craft CD builds should review their blueprints and ensure wh=
ere-ever possible that their dependencies are all in the list of projects b=
uilt in the shared cache. </span><span style=3D"background-color:transparen=
t">In the case of KTextAddons, adding it to the cache should save ~10 minut=
es on Windows and ~3-4 minutes on Linux (Appimage) per pipeline run.</span>=
</div><div><br></div><div>Details on the shared cache can be found at <a hr=
ef=3D"https://invent.kde.org/sysadmin/craft-ci">https://invent.kde.org/sysa=
dmin/craft-ci</a>.=C2=A0<span style=3D"background-color:transparent">A merg=
e request to correct this oversight as well as any other project it uses (P=
ulseaudio also appears to be a candidate) would be appreciated .</span></di=
v><div><span style=3D"background-color:transparent">Other projects using Cr=
aft CD builds should please review their Blueprints as well for similar ove=
rsights.</span></div><div><br></div><div>Thanks,</div><div>Ben</div></div>

--0000000000008df49b0656b8d5e0--