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 1qZFK2-004j36-8Z for pgsql-hackers@arkaria.postgresql.org; Thu, 24 Aug 2023 18:44:46 +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 1qZFJz-00Bb88-4u for pgsql-hackers@arkaria.postgresql.org; Thu, 24 Aug 2023 18:44:42 +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 1qZFJy-00Bb7u-OA for pgsql-hackers@lists.postgresql.org; Thu, 24 Aug 2023 18:44:42 +0000 Received: from mail-ot1-x335.google.com ([2607:f8b0:4864:20::335]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1qZFJu-000pXn-ND for pgsql-hackers@postgresql.org; Thu, 24 Aug 2023 18:44:41 +0000 Received: by mail-ot1-x335.google.com with SMTP id 46e09a7af769-6bdbfdc6634so638424a34.1 for ; Thu, 24 Aug 2023 11:44:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=neon-tech.20221208.gappssmtp.com; s=20221208; t=1692902676; x=1693507476; h=in-reply-to:references:subject:cc:from:to:message-id:date :content-transfer-encoding:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=RcAw6oIcJ4AgyHaqZq2z/GGbjuFDjGH14mpUYkTVlNY=; b=mDkJLL8Ph6QO56kpkiyPOsCeF2a9nBHx5Lm/y8aUie7EvTEJSLNRjh019MDFzwg5RY z3safUIIeXPLDCGcx93GeGUFf7ONqleWa0n4i4k8sL90b0Rff4gG4pTRTHz31zpE+tor cUXI6rFRjBcSHuMpPsaQNtb+dnZx4R7J2Yu2OcrEETfCk0HCMb9uq0u8WNPoKhb8VshV DYnNE3i3vCif52VdsWEINI3uFvNbkQIAsxOIH4t0bl1MGmerKCYu1angs5fQG9u3E0aR Pm7BjPJKpSUyAP0b5xzb0Jc4LRltF+Z+yr1LBNViKXsx6MBs4JIJaQoNxVnygZzUZAfG tlzw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1692902676; x=1693507476; h=in-reply-to:references:subject:cc:from:to:message-id:date :content-transfer-encoding:mime-version:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=RcAw6oIcJ4AgyHaqZq2z/GGbjuFDjGH14mpUYkTVlNY=; b=VpSKNZYgDBOVpDwym8XP5HYj3B9TDlErygf7/NcbJlgjQQPzjBdi4zwkoRK2Gails3 LLBF7g5a/6hm5iYvnM3fj/BoCNu5k1U8j7Ulwrl6a8qlASNNrI5l/+a1ylLR9Os1hnVX Try3ANBvLSseVM828Q2pXLN05zlGWmJ3h2ge5WMhLFciYfgvKFT2L+6YJUhSo34XB3QF ov+7XHHtYQfhmfaLFD2j6D0+LZzSiwTfn8JTUqEJ3FrNv8ssd9z7gdIZbvVuZVWlm1gi Ynv85cXq3Oh0d6DgPExTzx70Araq6GGzC/ODjgH3C6ZzyJMJRrQjt0rvqrwwL+y3rEKH sqoQ== X-Gm-Message-State: AOJu0Yxjk4HzZlO1AAF9HeWye1dcGcrPiHv6kdeFcL/cvRWfDjsOI1qH xfugYoD7+8ux8rgwD57ATS4o18sRcb4wW3AKgyg= X-Google-Smtp-Source: AGHT+IEP7PHsEgiCN1KObPw779bLBjkElfxISsu+vK/fxtvV23yxuD1hGHVxqrHWBz3J3IC/kMLVyA== X-Received: by 2002:a05:6870:b28b:b0:1c1:e6da:f890 with SMTP id c11-20020a056870b28b00b001c1e6daf890mr381994oao.9.1692902675978; Thu, 24 Aug 2023 11:44:35 -0700 (PDT) Received: from localhost ([172.58.99.68]) by smtp.gmail.com with ESMTPSA id l22-20020a056870d4d600b001cca1dc6d79sm102115oai.34.2023.08.24.11.44.34 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 24 Aug 2023 11:44:35 -0700 (PDT) Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8; format=Flowed Date: Thu, 24 Aug 2023 13:44:34 -0500 Message-Id: To: "Peter Eisentraut" From: "Tristan Partin" Cc: "pgsql-hackers" Subject: Re: Make documentation builds reproducible X-Mailer: aerc 0.15.2-140-gd2082f839df2 References: <9077b779-a9f8-09c8-6e85-da1ebfba15af@eisentraut.org> In-Reply-To: <9077b779-a9f8-09c8-6e85-da1ebfba15af@eisentraut.org> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Wed Aug 23, 2023 at 2:24 PM CDT, Peter Eisentraut wrote: > Somewhere at PGCon, I forgot exactly where, maybe in the same meeting=20 > where we talked about getting rid of distprep, we talked about that the= =20 > documentation builds are not reproducible (in the sense of=20 > https://reproducible-builds.org/). This is easily fixable, the fix is=20 > available upstream=20 > (https://github.com/docbook/xslt10-stylesheets/issues/54) but not=20 > released. We can backpatch that into our customization layer. The=20 > attached patch shows it. I am a tiny bit confused here. The commit that solved the issue was=20 merged into the master branch in 2018. GitHub lists the lastest release=20 as being in 2020. A quick git command shows this has been in releases=20 since December of 2018. $ git --no-pager tag --contains 0763160 ndw-test-001 snapshot-2018-12-07-01 snapshot-ndw-test/2019-10-04 snapshot/2018-09-28-172 snapshot/2018-09-28-173 snapshot/2018-09-28-174 snapshot/2018-09-28-175 snapshot/2018-09-29-176 snapshot/2018-09-29-177 snapshot/2018-09-30-178 snapshot/2018-09-30-179 snapshot/2018-10-01-180 snapshot/2018-10-02-183 snapshot/2018-10-02-184 snapshot/2018-10-16-185 snapshot/2018-10-16-186 snapshot/2018-10-21-188 snapshot/2018-11-01-191 snapshot/2019-10-05-bobs snapshot/2020-05-28-pdesjardins snapshot/2020-06-03 Is there anything I am missing? Is Postgres relying on releases older=20 than snapshot-2018-12-07-01? If so, is it possible to up the minimum=20 version? > I had actually often wanted this during development. When making=20 > documentation tooling changes, it's useful to be able to compare the=20 > output before and after, and this will eliminate false positives in that. > > This patch addresses both the HTML and the FO output. The man output is= =20 > already reproducible AFAICT. Note that the final PDF output is=20 > currently not reproducible; that's a different issue that needs to be=20 > fixed in FOP. (See=20 > https://wiki.debian.org/ReproducibleBuilds/TimestampsInPDFGeneratedByApac= heFOP.) I think reproducibility is very important. Thanks for taking this on!=20 --=20 Tristan Partin Neon (https://neon.tech)