Re: MacOS: xsltproc fails with "warning: failed to load external entity"
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Aleksander Alekseev <aleksander@timescale.com>
Cc: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>,
Peter Eisentraut <peter.eisentraut@enterprisedb.com>
Date: 2023-01-31T23:54:31Z
Lists: pgsql-hackers
Attachments
- force-use-of-nonet-for-docs-build-1.patch (text/x-diff) patch
I wrote: > It's worse than that: I find that > export XML_CATALOG_FILES=/dev/null > breaks the docs build on RHEL8 and Fedora 37 (latest) too, with the > same "failed to load external entity" symptom. I conclude from this > that there is no version of xsltproc anywhere that can still download > the required files automatically. So we need to take out the advice > that says you can rely on auto-download for everybody, not just macOS. > If this is indeed the case, perhaps we ought to start inserting --nonet > into the invocations. There's not much use in allowing these tools to > perform internet access when the best-case scenario is that they fail. Concretely, I'm thinking something like the attached. Notes: 1. I have not tested the meson changes. 2. As this is written, you can't override the --nonet options very easily in the Makefile build (you could do so at runtime by setting XSLTPROC, but not at configure time); and you can't override them at all in the meson build. Given the lack of evidence that it's still useful to allow net access, I'm untroubled by that. I did intentionally skip using "override" in the Makefile, though, to allow that case. 3. For consistency with the directions for other platforms, I made the package lists for macOS just mention libxslt. That should be enough to pull in libxml2 as well. 4. Use of --nonet changes the error message you get if xsltproc can't find the DTDs. I copied the error I get from MacPorts' version of xsltproc, but can you confirm it's the same on Homebrew? regards, tom lane
Commits
-
docs: meson: Change what 'docs' target builds
- 9e5b2a091fd0 17.0 landed
-
doc: Fix XML_CATALOG_FILES env var for Apple Silicon machines
- 4257d34e310b 11.20 landed
- aad9a2ee7c2d 12.15 landed
- c6f1f4e443fb 14.8 landed
- 9850ef9fc123 13.11 landed
- 50792b155371 15.3 landed
-
doc: fix Apple Silicon Homebrew prefix change documentation
- 5a91c7975503 16.0 landed
-
doc: Fix XML_CATALOG_FILES env var for Apple M1 machines
- 4c8d65408470 16.0 landed
-
Stop recommending auto-download of DTD files, and indeed disable it.
- 36a646d99c3f 11.20 landed
- 11f1f9f4fa30 12.15 landed
- 969509c3f2e3 16.0 landed
- c7b608600547 13.11 landed
- 7f8778fcf342 14.8 landed
- 2ee703c9d1c6 15.3 landed