Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:107115 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 990 invoked from network); 15 Sep 2019 20:58:56 -0000 Received: from unknown (HELO php-smtp3.php.net) (208.43.231.12) by pb1.pair.com with SMTP; 15 Sep 2019 20:58:56 -0000 Received: from php-smtp3.php.net (localhost [127.0.0.1]) by php-smtp3.php.net (Postfix) with ESMTP id 800792C0F11 for ; Sun, 15 Sep 2019 11:35:38 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp3.php.net X-Spam-Level: X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: X-Spam-Virus: No Received: from mail-lj1-x22f.google.com (mail-lj1-x22f.google.com [IPv6:2a00:1450:4864:20::22f]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by php-smtp3.php.net (Postfix) with ESMTPS for ; Sun, 15 Sep 2019 11:35:37 -0700 (PDT) Received: by mail-lj1-x22f.google.com with SMTP id y23so31655829lje.9 for ; Sun, 15 Sep 2019 11:35:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=NOeVucAVqZ9KRicTxloDVELbwGAnvxGT2sp+Ov7txj8=; b=j7g0lUQzjhpn9rZHoKhch3ZQUyZz8wkuz6h20gFcBPWhOo7B25bua0rpT95jlxepMu B2a+hPj0foybMHNSS7RgAkonjTcHjdEyIibUIZ8+60QxjKG65ThC2jFD1XSu+3XPmIni 1Uq8kudCcOeCizBkhNmXQDMI6EC1SP4AT2zMK9tE9LSyzPYmhs7190Ms15ZUFgjSOidS Lwl3ebvsVvF8v6b48C3bc0N/3clXXJYTtS4kXF+trnoezDzEIVhV2cPTVxe8EalPfYQi o/QFlMR5lD1+Q9vdVjKiNzhqbOxPENQnBRx77DSeZGwbil3QksYsrc2a9kQvbIxr37VT So2g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=NOeVucAVqZ9KRicTxloDVELbwGAnvxGT2sp+Ov7txj8=; b=NJJL5jpGjE0Zp/1AeNfrLmO3Udn8sXA+SEvDZK8qYMc79zBqftFY03aE/igg+pKcBr l9L3JWFlrgu19cHwNEGkQJcFDn6mC2pKLFKWpIWbmh/AwRLuxZKjlO/oxAYxiCYZS+0K k1oCiMmiAan6QlZXDOm0DSgfdeTyrsURyK1sH+mzRQFUd3IAyLf8yuXQp8kHjrO2u8ya hx13cvZY9s9KnHpoYf+LDOHyv0wYMD5RT9i4ePetVZFiOSWoDaRPM1VJl+7bwGpiuVi9 9o007v6hghTWRS0zn7mcZChCq3YsaVpZCkLngONZ2zB/9j8yn23H+cCnYgdFKe8XgaF2 1Ulg== X-Gm-Message-State: APjAAAXonAJHb6JFvptmP06unXR5J37u89mnsPOF12Vi3+8zjK4t/ZoM 2sDraArOU4PdnDBjRVsJ2ato4KRZX6vhycNuRIw= X-Google-Smtp-Source: APXvYqwL58wq9rdTwPB8XmxSdhgl/4JMsw+O8Q1ekbN39Dqp+wf1xcu0jvDbixw+BYDy4nnxBASyvwgNp0hzL9wrj4A= X-Received: by 2002:a2e:8997:: with SMTP id c23mr2037048lji.208.1568572536643; Sun, 15 Sep 2019 11:35:36 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: Date: Sun, 15 Sep 2019 20:35:20 +0200 Message-ID: To: Gabriel Caruso Cc: PHP internals Content-Type: multipart/alternative; boundary="000000000000d9e5a705929bc0ab" X-Envelope-From: Subject: Re: [PHP-DEV] Computing code coverage on Azure Pipelines From: nikita.ppv@gmail.com (Nikita Popov) --000000000000d9e5a705929bc0ab Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Sun, Sep 15, 2019 at 7:39 PM Gabriel Caruso wrote: > Hello Nikita, > > Em dom, 15 de set de 2019 =C3=A0s 19:29, Nikita Popov > escreveu: > >> Hi, >> >> gcov.php.net used to provide valgrind reports and code coverage for >> php-src. It no longer works with 7.4/8.0, because the OS is very old, an= d >> building new versions of PHP there gets very hard. The valgrind reports >> have essentially been subsumed by asan/ubsan on Azure Pipelines, but we'= re >> still missing a replacement for code coverage. >> >> I think it should be possible to set up an Azure Pipelines job that runs >> tests with coverage and publishes it, preferably on Azure Pipelines >> itself, >> or if that doesn't work something like codecov.io. >> >> Maybe someone is interested in giving this a try? >> >> Regards, >> Nikita >> > > I'm, as I've also reported this a while ago: > https://bugs.php.net/bug.php?id=3D78288. > > Do you have something in mind how/what to set up? > The first step is probably to get code coverage working locally. We have a ./configure --enable-gcov option and there's some extra make targets in build/Makefile.gcov. Maybe taking a look at what https://github.com/php/web-gcov/blob/master/cron/cron.sh does would help. Second step is to add a new job in azure by copying https://github.com/php/php-src/blob/master/azure/job.yml and adding the necessary gcov/lcov magic there. The hard part if how to get those results published on Azure under the "Code coverage" tab. There is a PublishCodeCoverageResults task for this purpose, but I don't know how one would use that with lcov in particular. It seems to me that part of it requires a coverage overview in a specific format and part is just a directory with HTML, so maybe the result from ltp genhtml can just be used there? Figuring out how to make this work is likely going to be "fun" ;) Nikita > --000000000000d9e5a705929bc0ab--