Re: pgsql: Adjust configure to insist on Perl version >= 5.8.3.

Daniel Gustafsson <daniel@yesql.se>

From: Daniel Gustafsson <daniel@yesql.se>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Postgres hackers <pgsql-hackers@lists.postgresql.org>, Craig Ringer <craig.ringer@enterprisedb.com>, Noah Misch <noah@leadboat.com>
Date: 2021-10-07T19:51:49Z
Lists: pgsql-hackers
> On 7 Oct 2021, at 21:44, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> 
> [ cc'ing Craig and Noah, as author/committer of the existing text ]
> 
> Daniel Gustafsson <daniel@yesql.se> writes:
>> On 7 Oct 2021, at 21:02, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>>> BTW, looking at that a second time, I wonder if that advice is
>>> really of any use.
> 
>> Yeah, I would have to agree.  Reading that again I think what it perhaps should
>> be saying is that 5.8.3 is the Perl API level that the testcode must conform
>> to, but they should run with basically whichever recent Perl you have handy as
>> long as the required modules are installed.  Not that we expect developers to
>> run 5.8.3 when executing TAP tests.
> 
> Yeah.  I propose that what might be more useful than the existing last
> section of src/test/perl/README is something along the lines of:
> 
>  Avoid using any bleeding-edge Perl features.  We have buildfarm
>  animals running Perl versions as old as 5.8.3, so your tests will
>  be expected to pass on that.
> 
>  Also, do not use any non-core Perl modules except IPC::Run.
>  Or, if you must do so for a particular test, arrange to skip
>  the test when the needed module isn't present.

Agreed, that's a lot more helpful.  Since the set of core Perl modules change
over time as modules are brought in (at least that's my understanding of it),
that last paragraph might want to discourage use of modules that aren't
expected to be in-core in commonly used systems?  It might be overthinking it
though.

--
Daniel Gustafsson		https://vmware.com/




Commits

  1. Make configure check for minimum required version of IPC::Run.

  2. Doc: update testing recipe in src/test/perl/README.

  3. Update test/perl/README to insist on Perl version >= 5.8.3, too.

  4. Adjust configure to insist on Perl version >= 5.8.3.

  5. Doc: specify that the minimum supported version of Perl is 5.8.3.