Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sHPPH-0076VZ-Ee for pgsql-hackers@arkaria.postgresql.org; Wed, 12 Jun 2024 14:57:00 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1sHPPF-001P60-0Y for pgsql-hackers@arkaria.postgresql.org; Wed, 12 Jun 2024 14:56:57 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sHPPE-001P5s-I1 for pgsql-hackers@lists.postgresql.org; Wed, 12 Jun 2024 14:56:57 +0000 Received: from dd25110.kasserver.com ([85.13.146.49]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sHPPB-001IBJ-BE for pgsql-hackers@postgresql.org; Wed, 12 Jun 2024 14:56:54 +0000 Received: from [192.168.0.101] (ip-037-201-153-175.um10.pools.vodafone-ip.de [37.201.153.175]) by dd25110.kasserver.com (Postfix) with ESMTPSA id EFC98E1A01BE; Wed, 12 Jun 2024 16:56:50 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=technowledgy.de; s=kas202308201259; t=1718204211; bh=71nlCNPns3vqVKz5h2wXQJF5K74TnaEeOaO9c6AysNk=; h=Date:From:Subject:To:Cc:References:In-Reply-To:From; b=lL0aDiU+oScjMsaLZTLe5MDBIs4+zIbiRz6SPPKcKlvg2J1kmrAeKK6MPC6OlsthF ePzyHf2v7PRYVHqrWkjnyTVF+rfcngssFROhwWB3X94pgxoYt5bJoBHY35QVTq+qR7 /bahUtTdBCMUtp1BJBPuxMa3n0BxBy+DLnpIt54sx2Du2RQ5o0gnO5Lo41Sxh0msMN XGvu7TEKpvcxRIvoSOY/s5laEMkccwiSLPT7uwZNHUpicYrNVcaErCtXsfSUj3qYrf C1hMM7vHgtyY9nmoHsWaDRjX2orE+PIyIoUpEmcmwTOaoAdvdNVcz0swZ9NPd4SKm3 Q1eGYiaHbvraw== Message-ID: <949b0dee-6cdc-4519-b2dd-52182de761a4@technowledgy.de> Date: Wed, 12 Jun 2024 16:56:49 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird From: walther@technowledgy.de Subject: Re: RFC: adding pytest as a supported test framework To: Jelte Fennema-Nio , Noah Misch Cc: Andres Freund , Andrew Dunstan , Jacob Champion , PostgreSQL Hackers References: <20240610200411.byj6sv2vpgol6wcf@awork3.anarazel.de> <00c5efe6-1abb-42f8-a9a7-ed3a055c4b92@dunslane.net> <20240611014911.khxuai5fy2ssbmiw@awork3.anarazel.de> <20240611234829.9d@rfd.leadboat.com> Content-Language: en-US In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spamd-Bar: / List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Jelte Fennema-Nio: > As scripting languages go, the ones that are still fairly heavily in > use are Javascript, Python, Ruby, and PHP. I think all of those could > probably work, but my personal order of preference would be Python, > Ruby, Javascript, PHP. > > Finally, I'm definitely biased towards using Python myself. But I > think there's good reasons for that: > 1. In the data space, that Postgres in, Python is very heavily used for analysis > 2. Everyone coming out of university these days knows it to some extent > 3. Multiple people in the community have been writing Postgres related > tests in python and have enjoyed doing so (me[1], Jacob[2], > Alexander[3]) PostgREST also uses pytest for integration tests - and that was a very good decision compared to the bash based tests we had before. One more argument for Python compared to the other mentioned scripting languages: Python is already a development dependency via meson. None of the other 3 are. In a future where meson will be the only build system, we will have python "for free" already. Best, Wolfgang