Re: Postgres perl module namespace
От | Andrew Dunstan |
---|---|
Тема | Re: Postgres perl module namespace |
Дата | |
Msg-id | 03909eb8-21ce-ca68-fea0-cd338e35ad59@dunslane.net обсуждение исходный текст |
Ответ на | Re: Postgres perl module namespace (Andrew Dunstan <andrew@dunslane.net>) |
Ответы |
Re: Postgres perl module namespace
|
Список | pgsql-hackers |
On 2022-04-19 Tu 11:36, Andrew Dunstan wrote: > On 2022-04-18 Mo 14:07, Tom Lane wrote: >> Andrew Dunstan <andrew@dunslane.net> writes: >>> No, I think we could probably just port the whole of src/test/PostreSQL >>> back if required, and have it live alongside the old modules. Each TAP >>> test is a separate miracle - see comments elsewhere about port >>> assignment in parallel TAP tests. >>> But that would mean we have some tests in the old flavor and some in the >>> new flavor in the back branches, which might get confusing. >> That works for back-patching entire new test scripts, but not for adding >> some cases to an existing script, which I think is more common. >> >> > > I think I've come up with a better scheme that I hope will fix all or > almost all of the pain complained of in this thread. I should note that > we deliberately delayed making these changes until fairly early in the > release 15 development cycle, and that was clearly a good decision. > > The attached three patches basically implement the new naming scheme for > the back branches without doing away with the old scheme or doing a > wholesale copy of the new modules. > > The first simply implements a proper "new" constructor for PostgresNode, > just like we have in PostgreSQL:Test::Cluster. It's not really essential > but it seems like a good idea. The second adds all the visible > functionality of the PostgresNode and TestLib modules to the > PostgreSQL::Test::Cluster and PostgreSQL::Test::Utils namespaces.. The > third adds dummy packages so that any code doing 'use > PostgreSQL::Test::Utils;' or 'use PostgreSQL::Test::Cluster;' will > actually import the old modules. This last piece is where there might be > some extra work needed, to export the names so that using an unqualified > function or variable, say, 'slurp_file("foo");' will work. But in > general, modulo that issue, I believe things should Just Work (tm). You > should basically just be able to backpatch any new or modified TAP test > without difficulty, sed script usage, etc. > > Comments welcome. > > Here's a version with a fixed third patch that corrects a file misnaming and fixes the export issue referred to above. Passes my testing so far. cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com
Вложения
В списке pgsql-hackers по дате отправления: