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

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Noah Misch <noah@leadboat.com>
Cc: Daniel Gustafsson <daniel@yesql.se>, Postgres hackers <pgsql-hackers@lists.postgresql.org>, Craig Ringer <craig.ringer@enterprisedb.com>
Date: 2021-10-10T20:10:38Z
Lists: pgsql-hackers
Noah Misch <noah@leadboat.com> writes:
> On Sun, Oct 10, 2021 at 01:17:10PM -0400, Tom Lane wrote:
>> The closest I can get to what we want using cpanm is with this recipe:
>> cpanm install Test::Simple@0.87_01
>> cpanm install IPC::Run@0.79
>> cpanm install ExtUtils::MakeMaker@6.50  # downgrade

> While the MakeMaker litter is annoying, I'm not too worried about it.  The
> only other thing I'd consider is doing the MakeMaker 6.50 install before
> Test::Simple, not after.

Tried that to begin with, doesn't work.  There are at least two problems:

1. Before anything else, the first invocation of "cpanm install" wants
to pull in "install".  That seems to be a dummy module, but it's not
without side-effects: it updates ExtUtils to current.  If your first
request is "cpanm install ExtUtils::MakeMaker@6.50", the version
specification is effectively ignored.

2. I then tried doing a second "cpanm install ExtUtils::MakeMaker@6.50",
and that did successfully downgrade to 6.50 ... but then the request
to update Test::Simple upgraded it again.  I'm not really sure why
that happened.  It looks more like a cpanm bug than anything Test::Simple
asked for.

I didn't do exhaustive experimentation to see if putting the downgrade
before "install IPC::Run" would work.  I think we're best off assuming
that cpanm will cause that upgrade due to phase-of-the-moon conditions,
so putting the downgrade last is the most robust recipe.

			regards, tom lane



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.