On Thu, Jun 23, 2022 at 10:45:40PM -0700, Noah Misch wrote:
> On Wed, Jun 22, 2022 at 11:03:22AM -0400, Andrew Dunstan wrote:
> > On 2022-06-22 We 03:21, Noah Misch wrote:
> > > On Tue, Apr 19, 2022 at 07:24:58PM -0400, Andrew Dunstan wrote:
> > >> On 2022-04-19 Tu 18:39, Michael Paquier wrote:
> > >>> +*generate_ascii_string = *TestLib::generate_ascii_string;
> > >>> +*slurp_dir = *TestLib::slurp_dir;
> > >>> +*slurp_file = *TestLib::slurp_file;
> > >>>
> > >>> I am not sure if it is possible and my perl-fu is limited in this
> > >>> area, but could a failure be enforced when loading this path if a new
> > >>> routine added in TestLib.pm is forgotten in this list?
> > >> Not very easily that I'm aware of, but maybe some superior perl wizard
> > >> will know better.
> > > One can alias the symbol table, like https://metacpan.org/pod/Package::Alias
> > > does. I'm attaching what I plan to use. Today, check-world fails after
> > >
> > > sed -i 's/TestLib/PostgreSQL::Test::Utils/g; s/PostgresNode/PostgreSQL::Test::Cluster/g' **/*.pl
> > >
> > > on REL_14_STABLE, because today's alias list is incomplete. With this change,
> > > the same check-world passes.
>
> The patch wasn't sufficient to make that experiment pass for REL_10_STABLE,
> where 017_shm.pl uses the %params argument of get_new_node(). The problem
> call stack had PostgreSQL::Test::Cluster->get_new_code calling
> PostgreSQL::Test::Cluster->new, which needs v14- semantics. Here's a fixed
> version, just changing the new() hack.
I pushed this, but it broke lapwing and wrasse. I will investigate.