Subject: Re: GSoC 2019 (was: Contributor Summit Topics and Logistics)

From: SZEDER Gábor <[email-masked]>
Date: Thu, 31 Jan 2019 03:02:33 +0100

On Tue, Jan 22, 2019 at 10:17:59AM +0100, Christian Couder wrote:
> - microprojects idea for interested students (like
> https://git.github.io/SoC-2018-Microprojects/)

> Suggestions for microprojects or project ideas are welcome! Volunteers
> for mentoring or org admin are welcome too!

I think we should remove most (all?) CI-related microprojects.

  - The first three are about adding static analizers.  Now, while
    adding a new build job to run a static analyzer is easy enough,
    it's also next to useless or even downright harmful in itself.
    Static analyzers are inherently prone to false positives, and
    dealing with those is definitely beyond the scope of a
    microproject.  And adding a static analysis build job that always
    fails because of undealt with false positives, and thus makes the
    whole build failed will just make life harder for those who take
    the effort to look at CI results.

    Last year we had submissions for these micrprojcets, but in the
    end they were not picked up because of this.

  - One project suggest installing CVS, Subversion and Apache in the
    CI environmens to increase test coverage.  Well, Subversion and
    Apache are already installed, and have been for a long time
    (though $GIT_TEST_SVNSERVE is not enabled (don't know why) and one
    test script is skipped because "svn-info test (SVN version: 1.8.8
    not supported)".  That leaves only CVS, which is perhaps too small
    a microproject (perhaps even with old standards; our microprojects
    grew considerably over the years).

  - Finally, the last one is about building a webpage that analyses
    Travis CI test results and identifies flaky tests, and then goes
    on to suggest that "look at the randomly failing tests and try to
    figure out why they fail".  I've got my fair share in fixing flaky
    tests, and IMO doing so is definitely beyond the scope of a
    microproject.

Ok, after suggesting the removal of five microproject ideas, here is a
suggestion for a new one:

  Find a test script that verifies the presence/absence of
  files/directories with 'test -(e|f|d|...)' and replace them with the
  appropriate 'test_path_is_file', 'test_path_is_dir', etc. helper
  functions.

The good thing about this is that there are plenty of those test
scripts :)