Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:73611 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 44132 invoked from network); 6 Apr 2014 03:13:53 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 6 Apr 2014 03:13:53 -0000 Authentication-Results: pb1.pair.com smtp.mail=pierre.php@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=pierre.php@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.192.54 as permitted sender) X-PHP-List-Original-Sender: pierre.php@gmail.com X-Host-Fingerprint: 209.85.192.54 mail-qg0-f54.google.com Received: from [209.85.192.54] ([209.85.192.54:59483] helo=mail-qg0-f54.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id B6/C0-39592-176C0435 for ; Sat, 05 Apr 2014 22:13:53 -0500 Received: by mail-qg0-f54.google.com with SMTP id a108so4981730qge.13 for ; Sat, 05 Apr 2014 20:13:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=+F0Bm8xzO1cxQpGHUyS+QDOVxliLxMZjEP1rWu9VQJk=; b=mCFyCYc7QXPFDvjghp20M5pZNY+zDn/szPw4AQCzcqnWHCXq4dR9ODtwd9c8BvSGdY qGM2QWLTTakwIr9XAzlm760RE79JdyHkrOTERjrSvmbvVweANvBxbiIdR5Pa4popCGOE X4I3CSFULK4rLQvYO2N7Ccfexz37GbUHsSC+4BZJcBvptlxY3Iuk4dn9vExditztiKPX rTTad2idS1HwKCJSevYekA0HzORQ5AMJG+SDT9ySo24/G+61h+frSUHNh38iOPccLgau nB9EUawN9BLo0/DdZ7Q3e4qMDJABGcqcHlWyJPzBBUO4/+Y2EOzQeWlAyWXqtSObE4Wf pE3g== MIME-Version: 1.0 X-Received: by 10.224.29.141 with SMTP id q13mr25017860qac.8.1396754031206; Sat, 05 Apr 2014 20:13:51 -0700 (PDT) Received: by 10.140.47.138 with HTTP; Sat, 5 Apr 2014 20:13:51 -0700 (PDT) In-Reply-To: <53404E5E.6010109@sugarcrm.com> References: <53404E5E.6010109@sugarcrm.com> Date: Sun, 6 Apr 2014 05:13:51 +0200 Message-ID: To: Stas Malyshev Cc: PHP Internals Content-Type: text/plain; charset=UTF-8 Subject: Re: [PHP-DEV] Travis CI unit tests From: pierre.php@gmail.com (Pierre Joye) On Sat, Apr 5, 2014 at 8:41 PM, Stas Malyshev wrote: > Hi! > > As many of us know, we have a setup on Travis CI which automatically > runs unit tests for our active branches. This is very convenient for > evaluating pull request and status of the branches and keeping us from > making changes that break something without us noticing. However, > there's a problem with this setup, and the problem is that CI build is > never kept in the green for more than a a few days, the "normal" state > of it is always failing. I think this situation is not normal and, > frankly, embarrassing for the project, and propose to institute a policy > to change it. > The start would be recognizing that the goal is to keep the CI tests > green. Once they are green, and somebody commits a change that makes > them fail, we have the following options (note I'm not advocating for > now any of them, just enumerating them) to fix it: > > 1. Revert the change immediately, and ask the submitter to fix the pull > (pulls can be tested too on CI too) and re-submit it when it's green. > > 2. Wait for the change developer for a reasonable short time to fix the > tests, if that does not happen, revert the change. > > 3. Put the failing tests into XFAIL until they are fixed by somebody. > > 4. Have somebody - e.g. RM for the branch - to modify the failing test > to reflect the new results. I am not a big fan of changing tests to make it work, especially for stable branches. Except for warning&co additions, a test change means a BC break. We have to be very careful here. Indeed I refer to existing tests here, newly added tests to cover a bug fix is another story, it can fail on one platform or a specific configuration. We can fix them by making them configuration&system agnostic. > These options, of course, can be used in combination and in > case-per-case basis, but I think we need some explicit attention to the > topic. I welcome everybody to propose suggestions about other options or > ways we could fix this situation going forward and would like to hear > the ideas about how we could make Travis CI tests useful and passing > successfully, thus ensuring better quality in the project. After the > initial discussion, I plan to write an RFC summarizing the proposals and > have it voted on and, hopefully, accepted, so we'd have official policy > on it, but fir now I'd also like to raise awareness of the issue and > solicit ideas and participation of the members of the project on this topic. One thing I would like to consider is peer reviews for patches in stable branches. What you proposed goes in this direction, always go through PR and travis before a change can be applied. Cheers, -- Pierre @pierrejoye | http://www.libgd.org