Re: Mop-up from Test::More version change patch

From: Noah Misch <noah(at)leadboat(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-hackers(at)lists(dot)postgresql(dot)org, Andrew Dunstan <andrew(at)dunslane(dot)net>
Subject: Re: Mop-up from Test::More version change patch
Date: 2021-11-24 04:37:45
Message-ID: 20211124043745.GB1493205@rfd.leadboat.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Nov 23, 2021 at 12:03:05PM -0500, Tom Lane wrote:
> Attached are a couple of patches I propose in the wake of commit
> 405f32fc4 (Require version 0.98 of Test::More for TAP tests).
>
> 0001 responds to the failure we saw on buildfarm member wrasse [1]
> where, despite configure having carefully checked for Test::More
> being >= 0.98, actual tests failed with
> Test::More version 0.98 required--this is only version 0.92 at /export/home/nm/farm/studio64v12_6/HEAD/pgsql.build/../pgsql/src/test/perl/PostgreSQL/Test/Utils.pm line 63.
> The reason is that wrasse was choosing "prove" from a different
> Perl installation than "perl", as a result of its configuration
> having set PERL to a nondefault place but doing nothing about PROVE.
>
> We already installed a couple of mitigations for that:
> (a) as of c4fe3199a, configure checks "prove" not "perl" for
> appropriate module versions;
> (b) Noah has modified wrasse's configuration to set PROVE.
> But I'm of the opinion that (b) should not be necessary.
> If you set PERL then it's highly likely that you want to use
> "prove" from the same installation.

My regular development system is a counterexample. It uses system Perl, but
it has a newer "prove" from CPAN:

$ grep -E '(PERL|PROVE)' config.status
S["PROVE"]="/home/nm/sw/cpan/bin/prove"
S["PERL"]="/usr/bin/perl"

The patch sends it back to using the system "prove":

S["PROVE"]="/usr/bin/prove"
S["PERL"]="/usr/bin/perl"

I could, of course, override that. But with so little evidence about systems
helped by the proposed change, I'm now -1.0 on it.

> 0002 is written to apply to v14 and earlier, and what it wants
> to do is back-patch the effects of 405f32fc4, so that the
> minimum Test::More version is 0.98 in all branches. The thought
> here is that (1) somebody is likely to want to back-patch a
> test involving Test::More::subtest before too long; (2) we have
> zero coverage for older Test::More versions anyway, now that
> all buildfarm members have been updated to work with HEAD.

wrasse v10..v14 is testing older Test::More, so coverage persists. However, I
am okay with this change.

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message kuroda.hayato@fujitsu.com 2021-11-24 04:57:23 RE: [Proposal] Add foreign-server health checks infrastructure
Previous Message Amit Kapila 2021-11-24 04:34:17 Re: parallel vacuum comments