Re: More strict testing requirements?

Martin Flöser <[email protected]>
Newsgroups gmane.comp.kde.devel.kwin
Message-ID <[email protected]>
Am 2018-11-17 13:56, schrieb David Edmundson:
> On Fri, Nov 16, 2018 at 5:29 PM Martin Flöser <[email protected]>
> wrote:
> 
>> Hi all,
> 
>> The root problem was obviously the CI system no longer
>> installing KWin and running the tests from the build directory.
> 
> Interestingly KDE applications on CI install before running tests.
> 
> https://build.kde.org/job/Applications/job/konsole/job/kf5-qt5%20SUSEQt5.9/
> 
> I know frameworks deliberately changed, David F gave an Akademy
> presentation about why this system is so much better - though I'm not
> very convinced.
> 
> I'm not sure what the story with Plasma is.

According to Ben in https://phabricator.kde.org/T9988 the tests are run 
prior to installation. If that is not a general rule for build.kde.org 
it should be changed for Plasma to run tests after installation IMHO. 
Plasma heavily depends on KPackage which does not support this method.

> 
>> Given the experience I would like to suggest that we setup rules for
>> 
>> handling failures.
>> 
>> 1. Prior to push ctest should be run locally
>> 2. Whenever a test fails on build.kde.org [1] no change is allowed
>> to be
>> pushed which does not fix the failure.
>> 3. If a failure on build.kde.org [1] is not fixed after 3 days the
>> change
>> which introduced the regression gets reverted
> 
> I'm fine with the sentiment, but I don't like blind rules and
> deadlines. It would have been stupid last week to go through and
> revert all the xwayland clipboard patches just because some test was
> failing on CI.
> 
> I think we should be able to handle doing things on a case-by-case
> basis.

The third rule is basically meant as the exit rule to rule number 2. The 
first two are for me a must. If we allow changes to go in after a 
regression we can just remove the test suite. We had several additional 
breakages the last two weeks and that is clearly related to the test 
suite having been in a bad state.

Now the third rule is meant for cases that a) a developer thinks he 
doesn't need testing and b) for the case a developer pushes a breaking 
change just before going on vacations. If we want to enforce rule 2 it 
would mean the community either has to fix the work of others (which 
sucks) or has to wait till the dev gets back from vacations (which sucks 
as well). By allowing the community to revert such a change no dev can 
go "you are evil!" and at the same time we have an exit strategy for 
rule 2. Of course that should always be a case by case decision which 
doesn't mean we shouldn't write down rules.

Cheers
Martin
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.