Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pcSY8-0000oq-45 for pgsql-hackers@arkaria.postgresql.org; Wed, 15 Mar 2023 14:56:20 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1pcSY6-0002d5-U5 for pgsql-hackers@arkaria.postgresql.org; Wed, 15 Mar 2023 14:56:18 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pcSY6-0002cu-Bh for pgsql-hackers@lists.postgresql.org; Wed, 15 Mar 2023 14:56:18 +0000 Received: from mail-io1-xd2b.google.com ([2607:f8b0:4864:20::d2b]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1pcSY3-0006ZY-BX for pgsql-hackers@lists.postgresql.org; Wed, 15 Mar 2023 14:56:17 +0000 Received: by mail-io1-xd2b.google.com with SMTP id g6so7913478iov.13 for ; Wed, 15 Mar 2023 07:56:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telsasoft-com.20210112.gappssmtp.com; s=20210112; t=1678892174; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=cRwcONX2MXYVzfw/ns05n/cKgup6FZNHLsB7ij3NRFQ=; b=NRmudhdo714wn1tP7XqPS80oifU7/ZIze6kisAEKs5Z65R+TcZBMK9RuPK9McLlk3e hSIj3GOFAA09dGlVods4Opuv5u6h2F4GCNidJpPZeJIuTQLScLao+Tvc3DjWqLBUAwGj DqysHW/01AsEZvs0j+7wCagJnC3Y9W3Pu44/vnJdWmUHR7AyO60EqnxKOcc2WcxOw0b6 1pdhduYUJ8m09sYsv8CANbnTYM3VyRGv1PI8+qhK122gt9g3mXwBxmhWSvXge3qs8Rit Pm1TdJSpzFMbl8jzy1Z+mwd2Bzx9JPvofoyb7wS30+M2YbHPiKFWRQCN1Xt1392wJVRS VkIA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678892174; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=cRwcONX2MXYVzfw/ns05n/cKgup6FZNHLsB7ij3NRFQ=; b=A37M51IsI0RpMvq0pYkga3mWGHXKhONRj9LQx9K/YxIlfiLnKK7CaaPVchasfmj8mL FpdcZOlBRpbyvAabhYjy/zJLRsFT0mJ9L1HuGVjkQM5yplVqXCxTPO5POnzFc9Cygb15 c07nkICRN33M4PHlnK+jB77TwkX3STHOCNZXdvB4zgLHTUcGBmaQ+mM68Sl0YCiOlIjp lJDZgiSwumIBz0otP57LciuWXFn03KzMiQPRMQlHU+WCONYvKmkbSnUCr9Ry065V5lPS zjKXw0Mzf+3JmR/pPE1cQMEP7FhzeVR09g0HBelCw2ompiMmM06XCi5hG1GlFk7APXK/ vdEg== X-Gm-Message-State: AO0yUKVb61vB5oRjAPeNQyEYJU8L/yRVAyf++54xMGcBH++8HDzAg7CS jLRzvpvK3lZqG4shzjg+fBi2CA== X-Google-Smtp-Source: AK7set8P2G9jIuTgwUGlm1VAQag3AigvPP8i6NpmkqJrSz/RRgEmX4Ai8RvBM8ch9PIIiZ2IyBm5Mw== X-Received: by 2002:a05:6602:58:b0:752:3e45:6629 with SMTP id z24-20020a056602005800b007523e456629mr3839222ioz.9.1678892174490; Wed, 15 Mar 2023 07:56:14 -0700 (PDT) Received: from pryzbyj.telsasoft (charmander.telsasoft.com. [50.244.222.1]) by smtp.gmail.com with ESMTPSA id b4-20020a5ea704000000b0074e7960e70dsm1728618iod.51.2023.03.15.07.56.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 15 Mar 2023 07:56:13 -0700 (PDT) Received: by pryzbyj.telsasoft (Postfix, from userid 1000) id 9601A800B39; Wed, 15 Mar 2023 09:56:12 -0500 (CDT) Date: Wed, 15 Mar 2023 09:56:12 -0500 From: Justin Pryzby To: Peter Eisentraut Cc: Thomas Munro , Tom Lane , Andres Freund , Andrew Dunstan , pgsql-hackers@lists.postgresql.org, Noah Misch , Michael Paquier , Anastasia Lubennikova , Robert Haas , Melanie Plageman , Daniel Gustafsson , samay sharma Subject: Re: CI and test improvements Message-ID: References: <20221121224542.p2zapvyvb7objluw@alap3.anarazel.de> <20221122225744.GF11463@telsasoft.com> <1441145.1675300332@sss.pgh.pa.us> <20230203142656.GA1653@telsasoft.com> <96832c09-db85-8443-c654-dae928816830@enterprisedb.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Wed, Mar 15, 2023 at 10:58:41AM +0100, Peter Eisentraut wrote: > On 14.03.23 05:56, Justin Pryzby wrote: > > I'm soliticing feedback on those patches that I've sent recently - I've > > elided patches if they have some unresolved issue. > > > [PATCH 1/8] cirrus/windows: add compiler_warnings_script > > Needs a better description of what it actually does. (And fewer "I'm not > sure how to write this ..." comments ;-) ) It looks like it would fail the > build if there is a compiler warning in the Windows VS task? Shouldn't that > be done in the CompilerWarnings task? The goal is to fail due to warnings only after running tests. https://www.postgresql.org/message-id/20220212212310.f645c6vw3njkgxka%40alap3.anarazel.de "Probably worth scripting something to make the windows task error out if there had been warnings, but only after running the tests." CompilerWarnings runs in a linux environment running with -Werror. This patch scrapes warnings out of MSVC, since (at least historically) it's too slow to run a separate windows VM to compile with -Werror. > Also, I see a bunch of warnings in the current output from that task. These > should be cleaned up in any case before we can let a thing like this loose. Yeah (and I mentioned those myself). As it stands, my patch also "breaks" everytime someone's else's patch introduces warnings. I included links demonstrating its failures. I agree that it's not okay to merge the patch when it's currently failing, but I cannot dig into that other issue right now. > > [PATCH 6/8] cirrus: code coverage > > This adds -Db_coverage=true to the FreeBSD task. This has a significant > impact on the build time. (+50% at least, it appears.) Yes - but with the CPUs added by the prior patch, the freebsd task is faster than it is currently. And its 8min runtime would match the other tasks well. > I'm not sure the approach here makes sense. For example, if you add a new > test, the set of changed files is just that test. So you won't get any > report on what coverage change the test has caused. The coverage report that I proposed clearly doesn't handle that case - it's not intended to. Showing a full coverage report is somewhat slow to generate, probably unreasonable to upload for every patch, every day, and not very interesting since it's at least 99% duplicative. The goal is to show a coverage report for new code for every patch. What fraction of the time do you think the patch author, reviewer or committer have looked at a coverage report? It's not a question of whether it's possible to do so locally, but of whether it's actually done. > Also, I don't think I trust the numbers from the meson coverage stuff yet. > See for example > . I'm not using the meson coverage target. I could instead add CFLAGS=--coverage. Anyway, getting a scalar value like "83%" might be interesting to show in cfbot, but it's not the main goal here. > > [PATCH 7/8] cirrus: upload changed html docs as artifacts > > [PATCH 8/8] +html index file > > This builds the docs twice and then analyzes the differences between the two > builds. This also affects the build times quite significantly. The main goal is to upload the changed docs. > People who want to look at the docs can build them locally. This makes the docs for every patch available for reviewers, without needing a build environment. An easy goal would be if documentation for every patch was reviewed by a native english speaker. Right now that's not consistently true. > How useful is this actually? I'm surprised if there's any question about the merits of making documentation easily available for review. Several people have agreed; one person mailed me privately specifically to ask how to show HTML docs on cirrusci. Anyway, all this stuff is best addressed either before or after the CF. I'll kick the patch forward. Thanks for looking. -- Justin