On 5/20/21 5:18 PM, Tom Lane wrote:
> Andrew Dunstan <andrew@dunslane.net> writes:
>> While solving a problem with the Beta RPMs, I noticed that they export
>> our perl test modules as capabilities like this:
>> [andrew@f34 x86_64]$ rpm -q --provides -p
>> postgresql14-devel-14-beta1_PGDG.fc34.x86_64.rpm | grep ^perl
>> perl(PostgresNode)
>> perl(PostgresVersion)
>> perl(RecursiveCopy)
>> perl(SimpleTee)
>> perl(TestLib)
>> I don't think we should be putting this stuff in a global namespace like
>> that. We should invent a namespace that's not likely to conflict with
>> other people, like, say, 'PostgreSQL::Test' to put these modules. That
>> would require moving some code around and adjusting a bunch of scripts,
>> but it would not be difficult. Maybe something to be done post-14?
> Agreed that we ought to namespace these better. It looks to me like most
> of these are several versions old. Given the lack of field complaints,
> I'm content to wait for v15 for a fix, rather than treating it as an open
> item for v14.
So now the dev tree is open for v15 it's time to get back to this item.
I will undertake to do the work, once we get the bike-shedding part done.
I'll kick that off by suggesting we move all of these to the namespace
PgTest, and rename TestLib to Utils, so instead of
use TestLib;
use PostgresNode;
you would say
use PgTest::Utils;
use PgTest::PostgresNode;
cheers
andrew
--
Andrew Dunstan
EDB: https://www.enterprisedb.com