Alvaro Herrera <alvhe...@alvh.no-ip.org> writes: > On 2021-Oct-07, Tom Lane wrote: >> Hmm. I do see that Module::CoreList knows not only which modules >> are in core but when they were brought in, so that does seem like >> a really valuable reference to know about. Let's just say something >> like "You can consult Module::CoreList to find out whether and for >> long a module has been present in the Perl core."
> WFM. Concretely, then, I propose the attached. regards, tom lane
diff --git a/src/test/perl/README b/src/test/perl/README index bfc7cdcfa3..94b00096fb 100644 --- a/src/test/perl/README +++ b/src/test/perl/README @@ -70,20 +70,15 @@ perldoc for the test modules, e.g.: perldoc src/test/perl/PostgresNode.pm -Required Perl -------------- - -Tests must run on perl 5.8.3 and newer. perlbrew is a good way to obtain such -a Perl; see http://perlbrew.pl . - -Just install and - - perlbrew --force install 5.8.3 - perlbrew use 5.8.3 - perlbrew install-cpanm - cpanm install IPC::Run - -then re-run configure to ensure the correct Perl is used when running -tests. To verify that the right Perl was found: - - grep ^PERL= config.log +Portability +----------- + +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. If unsure, you can consult Module::CoreList to find +out whether a given module is part of the Perl core, and which module +versions shipped with which Perl releases.