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.96) (envelope-from ) id 1x18gH-0050Cn-0q for pgsql-www@arkaria.postgresql.org; Mon, 31 Aug 2026 20:32:37 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1x18gG-0020t2-0t for pgsql-www@arkaria.postgresql.org; Mon, 31 Aug 2026 20:32:36 +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.96) (envelope-from ) id 1x18gG-0020su-0A for pgsql-www@lists.postgresql.org; Mon, 31 Aug 2026 20:32:36 +0000 Received: from fhigh-a2-smtp.messagingengine.com ([103.168.172.153]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1x18gD-00000002G4I-0ymk for pgsql-www@lists.postgresql.org; Mon, 31 Aug 2026 20:32:35 +0000 Received: from phl-compute-05.internal (phl-compute-05.internal [10.202.2.45]) by mailfhigh.phl.internal (Postfix) with ESMTP id A86F114000D0; Mon, 31 Aug 2026 16:32:31 -0400 (EDT) Received: from phl-imap-15 ([10.202.2.104]) by phl-compute-05.internal (MEProxy); Mon, 31 Aug 2026 16:32:31 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=partin.io; h=cc :cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm1; t=1788208351; x=1788294751; bh=IoXXGuvdi5D+iCfbHWf1262+NYCa2Wu8jnURPdQHvyU=; b= rgRa30Q+ywj9FvnW7fJxmCm0+yttGvcZfGUYLTMQfbWS5bU71vjey+nm7Oxsn+Ia u46+sitpX2RXR0nmBidbXTMqtJ4+1UaaNlz/X0sAQ/9UJVx8ep2VPK7q2PLRFIbL nyvZ8242ZAbH9WEZjViUkO1fGF5hDhrNBRb3YRAhKBHWDaRiCfn7mn6P+brlaVmf gS7mfyKjx8kcTCf9PucxPCpuldC0v7Cjngp7KyDCezqqNQg2/A+b/kpdoepMGjsv ELY4GwKCpyxW/CG3298H8xMWBs9hzXRn/SjJmGL/iBUukSLt1KOqTbyzS1C3mCxZ y8c8i2+txPk5Wr97eknQPw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=1788208351; x= 1788294751; bh=IoXXGuvdi5D+iCfbHWf1262+NYCa2Wu8jnURPdQHvyU=; b=Z h03dE9atptFic6XtlN8sz/bu1PCeY13+a8mid9hUsswij3KnZRBHdB4cwF+/xC1K TXVfL9c8O5ZJpClypVds6lKGbtmcZ072S7tNpk5DFUOLraqym9ch+a3CmgxkTwiC tKN0JvpFfZVt42ggUOf2iUB53y5NPjRCghsq+Dw1Yx1PA0YkyzkAw7UfDbLSAAId bxzmF9GJ4xtIzwrWWN42XGWenWADyRHK7u7mkSA3eqzucGTI8Sb4jpowQlILVY/O +7jYqjPyMahE1eMNKR5s+SMkt4o2+2yuu7GGmwBIVBMUEKISMdjg+qmHu3Zo7hrq imftiHEWlsFZFR2cXRAbQ== X-ME-Sender: X-ME-Proxy-Cause: dmFkZTGnzBs/4Ui4bFSjGJkjImUUTWRReLhodoFljUd+/6BfxdgGtCvvYrBSBH0WZkxu1Z 6IGYvNUMn/KK2rsa6kA4JnrL+xAut2Y7i8nBGACwkpObgQHsHzI1UAaWSZ92w6ZJA+ZIxq BoVECs+cL0E20thsEMl9jVYH69V+GMxTyuDTk2ZEs8A8BUw77mndz2sndurNIwwnbgSz8n uDDQ8BhfBr+GlQ2SP0u1YqnSxrUhrNDCMVd+KdvK6G7Q7k1dYH9sUoubX3F2IOol06i+xR xz/D6RizWQrEcSeSmoL1HBWPRZ6CBhJZEYOA4u80foXpunM3c3A4hTPPRddVXPzUvPPNBb v83z4pycfzCE+zTIytRcf2SD22s3WBx5doZI1y2PnQmWWd9sB+sstkPEg/hXelvYpZVIiy mNwL+z7aVbDvGbJQDE3X9wckSM80jdJkoM8wNFjAjbc9z69v7WJL+nLwxFzvZU5Qokkfr1 CImuPcWyCrZHSa6ZEq6Rp+bCvyUXcki3FK9CslAuFMnQDz/EiGtvX/TAgEmBMQYdfpcq1X pqj+n3EquBHxz0/3C2ispGy3pA7GfnaKZmfy6hDhkcCTEVbyQ3Sx5oojDkHPbgdB+HEgSM gpEImTdgTlshEb3GLGh1Z6DKzlFP1/E2F4o8zt/9bBR8/d1DXhkNknuQLOEA X-ME-Proxy: Feedback-ID: idd01497b:Fastmail Received: by mailuser.phl.internal (Postfix, from userid 501) id 701BD7811F3; Mon, 31 Aug 2026 16:32:31 -0400 (EDT) X-Mailer: MessagingEngine.com Webmail Interface Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Date: Mon, 31 Aug 2026 20:32:31 +0000 Message-Id: Cc: "pgsql-www" Subject: Re: Python Tooling To: "Jonathan S. Katz" , "Magnus Hagander" From: "Tristan Partin" X-Mailer: aerc 0.22.0-10-g2b907edf1807 References: In-Reply-To: List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Mon Aug 31, 2026 at 8:26 PM UTC, Jonathan S. Katz wrote: > On 8/31/26 4:23 PM, Tristan Partin wrote: > >>> The basic answer is, "use whatever is in debian" because that's what it= 's >>> deployed on, and at this point that's trixie. >>> >>> That also means we do *not* want to change the dependencies to anything >>> other than whatr's there. >>=20 >> Does this mean that we rely on the versions of Python packages within >> Trixie and the requirements.txt is basically ignored? > > FWIW I will use requirements.txt in my local environment, but that only= =20 > happens when it gets nuked, so it's a once-every-few-years ordeal. > > (I could probably get the pgweb env to load from a container; perhaps=20 > this is a suggestion towards a Dockerfile?) Are you referring to deploying as a container or a devcontainer? To=20 expand on what I am thinking that we should use native Python tooling to=20 manage dependencies. For instance, we would encode all our dependencies=20 in the pyproject.toml, and then actually run the server with `uv run=20 ...`. Python tooling moves so much faster than Debian that I don't think it=20 makes sense to depend on Debian for anything other than the base OS and=20 maybe the Python interpreter. --=20 Tristan Partin PostgreSQL Contributors Team AWS (https://aws.amazon.com)