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 1t8uH0-006fAN-4w for pgsql-hackers@arkaria.postgresql.org; Thu, 07 Nov 2024 04:37:33 +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 1t8uGx-00BnQY-AS for pgsql-hackers@arkaria.postgresql.org; Thu, 07 Nov 2024 04:37:31 +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 1t8uGw-00BnQP-L9 for pgsql-hackers@lists.postgresql.org; Thu, 07 Nov 2024 04:37:31 +0000 Received: from fhigh-a5-smtp.messagingengine.com ([103.168.172.156]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1t8uGs-000cVN-49 for pgsql-hackers@postgresql.org; Thu, 07 Nov 2024 04:37:30 +0000 Received: from phl-compute-10.internal (phl-compute-10.phl.internal [10.202.2.50]) by mailfhigh.phl.internal (Postfix) with ESMTP id BD5B81140163 for ; Wed, 6 Nov 2024 23:37:24 -0500 (EST) Received: from phl-imap-10 ([10.202.2.85]) by phl-compute-10.internal (MEProxy); Wed, 06 Nov 2024 23:37:24 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=partin.io; h=cc :content-type:content-type:date:date:from:from:in-reply-to :message-id:mime-version:reply-to:subject:subject:to:to; s=fm3; t=1730954244; x=1731040644; bh=PvBqthjOltxoU8QVe0quLVa6Fc/d+LMv QhtxBB6Oq/U=; b=QEawCsJxHLM7X1q4jlM6LY69AUBlZfhFkyxXEIT9PXxe2p7F C+8TSPeRKJmsBeE5+jg8Cb93IdMxDcHIeGWmv+K/hYiRi2DzxGgMKh6URGstddNp 7yUxj4xeQphIPKQ+oTVN2T2r7DIhlh+KGIpIncKvTMO0W3I6fz6vWgoNbV72eYFh 1PrgTB8hbFs9ucBWfv9VhvFRXTT3JZHWLm980FbyzXwJpUqnkMttToYW+mef2f+z yATCx8o5E1VE4G5vgv2rcf6rMgAFlXGa2BaYaFUaosHAROgRyniYRlDoVS6O2jWq cgdjjZGJGVsF7myZXRQmxqQen6J4wT3o/IE1KQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:message-id :mime-version:reply-to:subject:subject:to:to:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=1730954244; x= 1731040644; bh=PvBqthjOltxoU8QVe0quLVa6Fc/d+LMvQhtxBB6Oq/U=; b=m LYMEqxCT8chufzGyVHQdNMhn5grY4/LGW3/0VhF6VKt+sPHxhNKHOslX8SFkfkTu gcTa7rIKuGADXX3VQsjyF/bg9jhXI5Tvu+gNP18kSEO0MtwJbz/BfBQL6uNIbPig hrMxqlRws8D2fRPkTUmAUAJk77M/8vbzo8JylQYssCY7G2poHmp5diMOxTXAFqqB sJhHwalILHvshuIiXasLDnP0AZ0IpU2YdiWFW3GnAMTisrcOOgKeA+9gODhbo5HJ gv58UdkQ2Z8rK3Pf9fm3oE9srA6HoS2588hnIm5DaaMS0P0qCB4yCRIS50FMsXRC yL/R07C17ja9rPDbFql1A== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefuddrtdefgdejgecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpggftfghnshhusghstghrihgsvgdpuffr tefokffrpgfnqfghnecuuegrihhlohhuthemuceftddtnecunecujfgurhepofgtggffkf fuvffhofesmhdtreerredtjeenucfhrhhomhepfdfvrhhishhtrghnucfrrghrthhinhdf uceothhrihhsthgrnhesphgrrhhtihhnrdhioheqnecuggftrfgrthhtvghrnhephedvke dtveekieeutedvvdevfedtjeefheegtddugeetvdekgeevvdevhffhteeknecuffhomhgr ihhnpehnvghonhdrthgvtghhnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpe hmrghilhhfrhhomhepthhrihhsthgrnhesphgrrhhtihhnrdhiohdpnhgspghrtghpthht ohepuddpmhhouggvpehsmhhtphhouhhtpdhrtghpthhtohepphhgshhqlhdqhhgrtghkvg hrshesphhoshhtghhrvghsqhhlrdhorhhg X-ME-Proxy: Feedback-ID: idd01497b:Fastmail Received: by mailuser.phl.internal (Postfix, from userid 501) id E79843C0066; Wed, 6 Nov 2024 23:37:23 -0500 (EST) X-Mailer: MessagingEngine.com Webmail Interface Content-Type: multipart/mixed; boundary=e9f68f5cfacc848e525d83fd6437a87c551d69d0c90d3b64c1adad1a13d9 Mime-Version: 1.0 Date: Thu, 07 Nov 2024 04:37:22 +0000 Message-Id: Subject: Add html-serve target to autotools and meson To: "pgsql-hackers" From: "Tristan Partin" X-Mailer: aerc 0.18.2-103-ge7b610668cb6 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --e9f68f5cfacc848e525d83fd6437a87c551d69d0c90d3b64c1adad1a13d9 Content-Type: multipart/alternative; boundary=fa6bbe22ec5b2add7e790493d26903998a74049e99058c86e6bb9e074430 --fa6bbe22ec5b2add7e790493d26903998a74049e99058c86e6bb9e074430 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Content-Type: text/plain; charset=UTF-8; format=Flowed When working on documentation, I find it useful to spawn an HTTP server=20 to serve docs for me to consume in a web browser. I went ahead and used=20 Python's builtin http.server module, but it could also be a run target=20 which just spawned `xdg-open builddir/doc/src/sgml/html/index.html`,=20 though I would doubt Windows has xdg-open(1). The one controversial part of this patch might be using "port" 0, which=20 asks the kernel to assign an unused port. I'm not sure if that exists on=20 Windows, or is even desireable. Should we have a build option for the=20 port? What would a good default be? --=20 Tristan Partin Neon (https://neon.tech) --fa6bbe22ec5b2add7e790493d26903998a74049e99058c86e6bb9e074430-- --e9f68f5cfacc848e525d83fd6437a87c551d69d0c90d3b64c1adad1a13d9 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename=html-serve.diff Content-Type: text/x-patch; charset=utf-8; name=html-serve.diff ZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9NYWtlZmlsZSBiL2RvYy9zcmMvc2dtbC9NYWtlZmls ZQppbmRleCBhMDRjNTMyYjUzLi42ZjYyOWUwMmE3IDEwMDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwv TWFrZWZpbGUKKysrIGIvZG9jL3NyYy9zZ21sL01ha2VmaWxlCkBAIC0xMzAsNiArMTMwLDkgQEAg aHRtbC1zdGFtcDogc3R5bGVzaGVldC54c2wgcG9zdGdyZXMtZnVsbC54bWwgJChBTExfSU1BR0VT KQogCSQoWFNMVFBST0MpICQoWE1MSU5DTFVERSkgJChYU0xUUFJPQ0ZMQUdTKSAkKFhTTFRQUk9D X0hUTUxfRkxBR1MpICQod29yZGxpc3QgMSwyLCReKQogCXRvdWNoICRACiAKK2h0bWwtc2VydmU6 IGh0bWwKKwlweXRob24zIC1tIGh0dHAuc2VydmVyIC0tZGlyZWN0b3J5ICckKHRvcF9idWlsZGRp cikvJChzdWJkaXIpL2h0bWwnIDAKKwogIyBzaW5nbGUtcGFnZSBIVE1MCiBwb3N0Z3Jlcy5odG1s OiBzdHlsZXNoZWV0LWh0bWwtbm9jaHVuay54c2wgcG9zdGdyZXMtZnVsbC54bWwgJChBTExfSU1B R0VTKQogCSQoWFNMVFBST0MpICQoWE1MSU5DTFVERSkgJChYU0xUUFJPQ0ZMQUdTKSAkKFhTTFRQ Uk9DX0hUTUxfRkxBR1MpIC1vICRAICQod29yZGxpc3QgMSwyLCReKQpkaWZmIC0tZ2l0IGEvZG9j L3NyYy9zZ21sL21lc29uLmJ1aWxkIGIvZG9jL3NyYy9zZ21sL21lc29uLmJ1aWxkCmluZGV4IGU0 MThkZTgzYTcuLmZhNTk4ZDhhYjEgMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9tZXNvbi5idWls ZAorKysgYi9kb2Mvc3JjL3NnbWwvbWVzb24uYnVpbGQKQEAgLTE1NCw2ICsxNTQsMTkgQEAgaWYg ZG9jc19kZXAuZm91bmQoKQogICBhbGlhc190YXJnZXQoJ2h0bWwnLCBodG1sKQogICBhbGlhc190 YXJnZXQoJ2luc3RhbGwtaHRtbCcsIGluc3RhbGxfZG9jX2h0bWwpCiAKKyAgcnVuX3RhcmdldCgK KyAgICAnaHRtbC1zZXJ2ZScsCisgICAgY29tbWFuZDogWworICAgICAgcHl0aG9uLAorICAgICAg Jy1tJywKKyAgICAgICdodHRwLnNlcnZlcicsCisgICAgICAnLS1kaXJlY3RvcnknLAorICAgICAg bWVzb24uY3VycmVudF9idWlsZF9kaXIoKSAvICdodG1sJywKKyAgICAgICcwJywKKyAgICBdLAor ICAgIGRlcGVuZHM6IGh0bWwsCisgICkKKwogICAjIGJ1aWxkIGFuZCBpbnN0YWxsIG11bHRpLXBh Z2UgaHRtbCBkb2NzIGFzIHBhcnQgb2YgZG9jcyB0YXJnZXQKICAgZG9jcyArPSBodG1sCiAgIGlu c3RhbGxkb2NzICs9IGluc3RhbGxfZG9jX2h0bWwK --e9f68f5cfacc848e525d83fd6437a87c551d69d0c90d3b64c1adad1a13d9--