Re: Direction for test frameworks: Perl TAP vs. Python/pytest

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Jacob Champion <jacob(dot)champion(at)enterprisedb(dot)com>
Cc: Daniel Gustafsson <daniel(at)yesql(dot)se>, Aleksander Alekseev <aleksander(at)tigerdata(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>, Heikki Linnakangas <hlinnaka(at)iki(dot)fi>, Andrew Dunstan <andrew(at)dunslane(dot)net>, Melanie Plageman <melanieplageman(at)gmail(dot)com>
Subject: Re: Direction for test frameworks: Perl TAP vs. Python/pytest
Date: 2026-06-16 16:02:09
Message-ID: 754339.1781625729@sss.pgh.pa.us
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Jacob Champion <jacob(dot)champion(at)enterprisedb(dot)com> writes:
> On Tue, Jun 16, 2026 at 8:41 AM Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>> I'm starting to think that we'd thank ourselves in the long run
>> if we did do the conversion in all branches at once.

> Avoiding the "big bang" port was one of the reasons I proposed adding
> a Python suite that only does things we don't currently do in Perl (a
> pared-down option B, plus Test::Session). That way, we shake out the
> Python deployment/maintenance questions and begin to develop a shared
> vocabulary *before* the entirety of the test suite starts depending on
> it.

There's definitely a lot to be said for having an initial phase where
only all-new test scripts get written in Python, and we shake out the
test infrastructure's teething problems in master only. Once we feel
that we have that pretty much down, we could think about converting
the existing tests. Based on this conversation, I think that step
will probably need to touch the back branches too.

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message 신성준 2026-06-16 16:10:18 Re: Add wait events for server logging destination writes
Previous Message Jacob Champion 2026-06-16 15:54:34 Re: Direction for test frameworks: Perl TAP vs. Python/pytest