Postgres perl module namespace
Andrew Dunstan <andrew@dunslane.net>
From: Andrew Dunstan <andrew@dunslane.net>
To: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2021-05-20T19:47:43Z
Lists: pgsql-hackers
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?
Meanwhile I would suggest that RPM maintainers exclude both requires and
provides for these five names.
cheers
andrew
--
Andrew Dunstan
EDB: https://www.enterprisedb.com
Commits
-
Fix PostgreSQL::Test aliasing for Perl v5.10.1.
- fe25c8533c17 12.12 landed
- ca590a4e958f 10.22 landed
- bf92b73beb50 11.17 landed
- aa1845cdd697 13.8 landed
- 4b0d21b06c6b 14.5 landed
-
For PostgreSQL::Test compatibility, alias entire package symbol tables.
- 38790408b020 10.22 landed
- ec26f44d539a 12.12 landed
- e8f037a2df9b 13.8 landed
- c41edb324294 11.17 landed
- 20911775de4a 14.5 landed
-
Make PostgresNode easily subclassable
- 54dacc746628 10.0 cited