Re: [HACKERS] PL_stashcache, or, what's our minimum Perl version? - Mailing list pgsql-hackers

From Tels
Subject Re: [HACKERS] PL_stashcache, or, what's our minimum Perl version?
Date
Msg-id 20608b8b31fc5691c69a475a39762481.squirrel@sm.webmail.pair.com
Whole thread Raw
In response to Re: [HACKERS] PL_stashcache, or, what's our minimum Perl version?  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: [HACKERS] PL_stashcache, or, what's our minimum Perl version?  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
On Sun, July 30, 2017 4:35 pm, Tom Lane wrote:
> "Tels" <nospam-pg-abuse@bloodgate.com> writes:
>> On Sun, July 30, 2017 12:22 pm, Tom Lane wrote:
>>> Yeah, I looked into that.  The closest candidate I can find is that
>>> perl 5.10.1 contains Test::More 0.92.  However, it's not real clear
>>> to me exactly which files I'd need to pull out of 5.10.1 and inject
>>> into
>>> an older tarball --- the layout seems a lot different from a standalone
>>> package.
>
>> So basically the two files:
>> http://search.cpan.org/src/EXODIST/Test-Simple-1.302086/lib/Test/More.pm
>> http://search.cpan.org/src/EXODIST/Test-Simple-1.302086/lib/Test/Builder/Module.pm
>> might do the trick.
>
> Thanks for the hint.  I transplanted these files out of a 5.10.1
> tarball into 5.8.3, then built as usual:
> lib/Test/Simple.pm
> lib/Test/More.pm
> lib/Test/Builder.pm
> lib/Test/Builder/Module.pm
> The result seems to work, although it fails a few of 5.8.3's tests,
> probably because I didn't copy over the relevant test scripts.
> It's good enough to run PG's tests though.

Ah, cool. One more question:

> 1. Can it run the build-related Perl scripts needed to build PG from
> a bare git checkout, on non-Windows platforms?
> 2. Can it run our MSVC build scripts?
> 3. Does pl/perl compile (and pass its regression tests) against it?
> 4. Can it run our TAP tests?

> 5.8.3 does appear to succeed at points 1,3,4.  Now, to get through
> the TAP tests you need to install IPC::Run, and you also need to
> update Test::More because the version shipped with 5.8.3 is too old.
> But at least the failures that you get from lacking these are pretty
> clear.

So, for point 2, one would need Perl 5.8.3 + a newer Test::More and
IPC::Run, or a newer Perl. I've toyed around with cpanminus:
apt-get install cpanminuscpanm Test::Morecpanm IPC::Run

and it successfully build (in a local path because I was not root) the
latest Test::More and IPC::Run. I'm not sure if this would be enough to
run the MSVC build scripts, tho.

So, is the goal you are trying to achive here to be able to say "You need
Perl 5.8.3; plus Module XYZ in vABC if you want point 2, otherwise skip
this step" instead of saying "You need Perl 5.10.1?"?

In that case it might be also possible to write instructions on how to
obtain and use these modules, or how to just use a newer Perl in a temp.
path.

Best wishes,

Tels



pgsql-hackers by date:

Previous
From: "David G. Johnston"
Date:
Subject: Re: [HACKERS] Possible bug in 9.3.17 using operator <>
Next
From: Murtuza Zabuawala
Date:
Subject: Re: [HACKERS] [GENERAL] Not able to create collation on Windows