Documentation building broken in CFBot

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
22 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Documentation building broken in CFBot

Daniel Gustafsson
Since recently, all Travis builds in the CFBot are broken for docs builds in
the xmllint step.  Turns out, the oasis-open.org URL to the DTD is now
redirecting to HTTPS and xmllint is normally only compiled with HTTP support
which causes this to now break.

That being said, XMLLint will load the DTD locally if available so environments
which have the packages referenced in the postgres docs won't notice as they
provide the DTD.  The package containing the DTD is however not installed on
the CFBot.  I've opened a PR against the CFBot repo [0], but until merged the
builds will be red without necessarily being an issue with the patch being
built.

cheers ./daniel

[0] https://github.com/macdice/cfbot/pull/12




Reply | Threaded
Open this post in threaded view
|

Re: Documentation building broken in CFBot

Jonathan S. Katz-3
On 11/11/20 5:47 AM, Daniel Gustafsson wrote:
> Since recently, all Travis builds in the CFBot are broken for docs builds in
> the xmllint step.  Turns out, the oasis-open.org URL to the DTD is now
> redirecting to HTTPS and xmllint is normally only compiled with HTTP support
> which causes this to now break.

Interesting. I ran into this issue yesterday when I was trying to build
the docs locally.

> That being said, XMLLint will load the DTD locally if available so environments
> which have the packages referenced in the postgres docs won't notice as they
> provide the DTD.  The package containing the DTD is however not installed on
> the CFBot.  I've opened a PR against the CFBot repo [0], but until merged the
> builds will be red without necessarily being an issue with the patch being
> built.

I do wonder if it's worth it to update the doc build documentation[1] as
well to mention this?

Jonathan

[1] https://www.postgresql.org/docs/current/docguide-toolsets.html

OpenPGP_0xF1049C729F1C6527.asc (13K) Download Attachment
OpenPGP_signature (855 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Documentation building broken in CFBot

Daniel Gustafsson
> On 11 Nov 2020, at 15:51, Jonathan S. Katz <[hidden email]> wrote:

> I do wonder if it's worth it to update the doc build documentation[1] as
> well to mention this?

Well, ideally you would never encounter this error if you install the packages
listed as required.  That being said, the lists must be up to date of course.
Since I assume you were building on macOS, which package manager are you using?

My guess is that docbook-xml should be added to the macports install set, but I
don't use macports myself so thats just guessing based on what their packages
seem to contain.

Homebrew doesn't have a docbook-xml package, but the docbook package seems to
contain what other have in docbook-xml.

cheers ./daniel

Reply | Threaded
Open this post in threaded view
|

Re: Documentation building broken in CFBot

Tom Lane-2
Daniel Gustafsson <[hidden email]> writes:
>> On 11 Nov 2020, at 15:51, Jonathan S. Katz <[hidden email]> wrote:
>> I do wonder if it's worth it to update the doc build documentation[1] as
>> well to mention this?

> Well, ideally you would never encounter this error if you install the packages
> listed as required.

I wonder if we should start passing "--nonet" to xmllint et al.  I've
always felt that that silent reach into the internet was an anti-feature
on numerous grounds: it's slow, it's not very secure, it makes the results
uncertainly reproducible, etc etc etc.

                        regards, tom lane


Reply | Threaded
Open this post in threaded view
|

Re: Documentation building broken in CFBot

Magnus Hagander-2
On Wed, Nov 11, 2020 at 4:43 PM Tom Lane <[hidden email]> wrote:

>
> Daniel Gustafsson <[hidden email]> writes:
> >> On 11 Nov 2020, at 15:51, Jonathan S. Katz <[hidden email]> wrote:
> >> I do wonder if it's worth it to update the doc build documentation[1] as
> >> well to mention this?
>
> > Well, ideally you would never encounter this error if you install the packages
> > listed as required.
>
> I wonder if we should start passing "--nonet" to xmllint et al.  I've
> always felt that that silent reach into the internet was an anti-feature
> on numerous grounds: it's slow, it's not very secure, it makes the results
> uncertainly reproducible, etc etc etc.

I think we should. It would also lead to "break early" which is easier
to diagnose than "break at a random point when someone external
changed something".

--
 Magnus Hagander
 Me: https://www.hagander.net/
 Work: https://www.redpill-linpro.com/


Reply | Threaded
Open this post in threaded view
|

Re: Documentation building broken in CFBot

Jonathan S. Katz-3
In reply to this post by Tom Lane-2
On 11/11/20 10:43 AM, Tom Lane wrote:

> Daniel Gustafsson <[hidden email]> writes:
>>> On 11 Nov 2020, at 15:51, Jonathan S. Katz <[hidden email]> wrote:
>>> I do wonder if it's worth it to update the doc build documentation[1] as
>>> well to mention this?
>
>> Well, ideally you would never encounter this error if you install the packages
>> listed as required.
>
> I wonder if we should start passing "--nonet" to xmllint et al.  I've
> always felt that that silent reach into the internet was an anti-feature
> on numerous grounds: it's slow, it's not very secure, it makes the results
> uncertainly reproducible, etc etc etc.
It was still bugging out for me locally with --nonet, but that could
also be operator error.

Agree overall though, it seems to go against the grain of a lot of the
other things that we do. We do make a network request for loading the
website styles when building the docs, but that is also an optional
feature. Right now, I can't even get "make html" to successfully run.

Jonathan

OpenPGP_0xF1049C729F1C6527.asc (13K) Download Attachment
OpenPGP_signature (855 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Documentation building broken in CFBot

Tom Lane-2
"Jonathan S. Katz" <[hidden email]> writes:
> On 11/11/20 10:43 AM, Tom Lane wrote:
>> I wonder if we should start passing "--nonet" to xmllint et al.  I've
>> always felt that that silent reach into the internet was an anti-feature
>> on numerous grounds: it's slow, it's not very secure, it makes the results
>> uncertainly reproducible, etc etc etc.

> It was still bugging out for me locally with --nonet, but that could
> also be operator error.

The point of --nonet is that then you would *have to* install the DTDs
locally in order to build the docs.

(Well, I wouldn't be quite that draconian about it; if we do this,
I think it should be more like "we use --nonet by default but you can
override that".)

                        regards, tom lane


Reply | Threaded
Open this post in threaded view
|

Re: Documentation building broken in CFBot

Jonathan S. Katz-3
On 11/11/20 11:11 AM, Tom Lane wrote:

> "Jonathan S. Katz" <[hidden email]> writes:
>> On 11/11/20 10:43 AM, Tom Lane wrote:
>>> I wonder if we should start passing "--nonet" to xmllint et al.  I've
>>> always felt that that silent reach into the internet was an anti-feature
>>> on numerous grounds: it's slow, it's not very secure, it makes the results
>>> uncertainly reproducible, etc etc etc.
>
>> It was still bugging out for me locally with --nonet, but that could
>> also be operator error.
>
> The point of --nonet is that then you would *have to* install the DTDs
> locally in order to build the docs.
Yup, I had tried installing the DTDs locally, and clearly failed at it
:) I also did not spend too much time trying to troubleshoot my failures.

> (Well, I wouldn't be quite that draconian about it; if we do this,
> I think it should be more like "we use --nonet by default but you can
> override that".)
That sounds reasonable.

Also FWIW yesterday I had tried quickly swapping the DTD references to
use HTTPS but still hit similar issues, and per above I did not spend
much time trying to troubleshoot.

Jonathan

OpenPGP_0xF1049C729F1C6527.asc (13K) Download Attachment
OpenPGP_signature (855 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Documentation building broken in CFBot

Daniel Gustafsson
In reply to this post by Tom Lane-2
> On 11 Nov 2020, at 16:43, Tom Lane <[hidden email]> wrote:
>
> Daniel Gustafsson <[hidden email]> writes:
>>> On 11 Nov 2020, at 15:51, Jonathan S. Katz <[hidden email]> wrote:
>>> I do wonder if it's worth it to update the doc build documentation[1] as
>>> well to mention this?
>
>> Well, ideally you would never encounter this error if you install the packages
>> listed as required.
>
> I wonder if we should start passing "--nonet" to xmllint et al.  I've
> always felt that that silent reach into the internet was an anti-feature
> on numerous grounds: it's slow, it's not very secure, it makes the results
> uncertainly reproducible, etc etc etc.

..and it will most likely come as a surprise to most.  I think we should start
doing that.

cheers ./daniel

Reply | Threaded
Open this post in threaded view
|

Re: Documentation building broken in CFBot

Daniel Gustafsson
In reply to this post by Jonathan S. Katz-3
> On 11 Nov 2020, at 17:13, Jonathan S. Katz <[hidden email]> wrote:
>
> On 11/11/20 11:11 AM, Tom Lane wrote:
>> "Jonathan S. Katz" <[hidden email]> writes:
>>> On 11/11/20 10:43 AM, Tom Lane wrote:
>>>> I wonder if we should start passing "--nonet" to xmllint et al.  I've
>>>> always felt that that silent reach into the internet was an anti-feature
>>>> on numerous grounds: it's slow, it's not very secure, it makes the results
>>>> uncertainly reproducible, etc etc etc.
>>
>>> It was still bugging out for me locally with --nonet, but that could
>>> also be operator error.
>>
>> The point of --nonet is that then you would *have to* install the DTDs
>> locally in order to build the docs.
>
> Yup, I had tried installing the DTDs locally, and clearly failed at it
> :) I also did not spend too much time trying to troubleshoot my failures.

Looking at config/docbook.m4 we check for the existence of the DTDs, but we
don't seem to use the findings in have_docbook?  Shouldn't we do something like
the below:

--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -492,6 +492,7 @@ DBTOEPUB    = @DBTOEPUB@
 FOP                            = @FOP@
 XMLLINT                        = @XMLLINT@
 XSLTPROC               = @XSLTPROC@
+have_docbook   = @have_docbook@

..and then error out in the doc/ Makefiles for the relevant targets in case
have_docbook is "no"?  Seems like that could save troubleshooting efforts like
the one referenced above.  Commit 7267fdd7a3a did in fact include this in the
global Makefile but has been removed at some point (which I'm currently too
undercaffeinated to find).

cheers ./daniel

Reply | Threaded
Open this post in threaded view
|

Re: Documentation building broken in CFBot

Thomas Munro-5
In reply to this post by Daniel Gustafsson
On Wed, Nov 11, 2020 at 11:47 PM Daniel Gustafsson <[hidden email]> wrote:
> [0] https://github.com/macdice/cfbot/pull/12

Done, thanks!  Will probably take a few hours for the results to show up.


Reply | Threaded
Open this post in threaded view
|

Re: Documentation building broken in CFBot

Peter Eisentraut-7
In reply to this post by Daniel Gustafsson
On 2020-11-11 21:04, Daniel Gustafsson wrote:

>> On 11 Nov 2020, at 16:43, Tom Lane <[hidden email]> wrote:
>>
>> Daniel Gustafsson <[hidden email]> writes:
>>>> On 11 Nov 2020, at 15:51, Jonathan S. Katz <[hidden email]> wrote:
>>>> I do wonder if it's worth it to update the doc build documentation[1] as
>>>> well to mention this?
>>
>>> Well, ideally you would never encounter this error if you install the packages
>>> listed as required.
>>
>> I wonder if we should start passing "--nonet" to xmllint et al.  I've
>> always felt that that silent reach into the internet was an anti-feature
>> on numerous grounds: it's slow, it's not very secure, it makes the results
>> uncertainly reproducible, etc etc etc.
>
> ..and it will most likely come as a surprise to most.  I think we should start
> doing that.
How about this patch.

0001-Run-libxml-based-tools-with-nonet-option-by-default.patch (3K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Documentation building broken in CFBot

Daniel Gustafsson
> On 13 Nov 2020, at 12:16, Peter Eisentraut <[hidden email]> wrote:
>
> On 2020-11-11 21:04, Daniel Gustafsson wrote:
>>> On 11 Nov 2020, at 16:43, Tom Lane <[hidden email]> wrote:
>>>
>>> Daniel Gustafsson <[hidden email]> writes:
>>>>> On 11 Nov 2020, at 15:51, Jonathan S. Katz <[hidden email]> wrote:
>>>>> I do wonder if it's worth it to update the doc build documentation[1] as
>>>>> well to mention this?
>>>
>>>> Well, ideally you would never encounter this error if you install the packages
>>>> listed as required.
>>>
>>> I wonder if we should start passing "--nonet" to xmllint et al.  I've
>>> always felt that that silent reach into the internet was an anti-feature
>>> on numerous grounds: it's slow, it's not very secure, it makes the results
>>> uncertainly reproducible, etc etc etc.
>> ..and it will most likely come as a surprise to most.  I think we should start
>> doing that.
>
> How about this patch.

LGTM, thanks.

cheers ./daniel

Reply | Threaded
Open this post in threaded view
|

Re: Documentation building broken in CFBot

Tom Lane-2
In reply to this post by Peter Eisentraut-7
Peter Eisentraut <[hidden email]> writes:
> On 2020-11-11 21:04, Daniel Gustafsson wrote:
>> On 11 Nov 2020, at 16:43, Tom Lane <[hidden email]> wrote:
>>> I wonder if we should start passing "--nonet" to xmllint et al.

> How about this patch.

This looks like it probably works as far as the actual build goes, but
could we change configure's call of xmllint likewise?  On a lot of my test
machines (where, as a rule, I don't install DocBook; but xmllint may exist
anyway), that probe for the docbook DTDs is the slowest step in configure,
and not by a small margin.

Actually, I kinda wonder why we bother probing for that at all; it doesn't
look like anything is done with have_docbook.

                        regards, tom lane


Reply | Threaded
Open this post in threaded view
|

Re: Documentation building broken in CFBot

Tom Lane-2
I wrote:
> Peter Eisentraut <[hidden email]> writes:
>> How about this patch.

> This looks like it probably works as far as the actual build goes, but
> could we change configure's call of xmllint likewise?  On a lot of my test
> machines (where, as a rule, I don't install DocBook; but xmllint may exist
> anyway), that probe for the docbook DTDs is the slowest step in configure,
> and not by a small margin.

> Actually, I kinda wonder why we bother probing for that at all; it doesn't
> look like anything is done with have_docbook.

This came up again today on another thread [1], so I took a second look
and confirmed that configure's test is completely dead code.  So here is
a patch to remove it outright, mooting the question of whether it ought
to use --no-net.

After removing PGAC_CHECK_DOCBOOK, there wasn't much left of docbook.m4,
and what there was had little to do with docbook; so I chose to just
remove that file altogether.

This is actually entirely independent of Peter's patch.  I'm tempted
to propose that we could back-patch it and thereby save some configure
cycles for developers, since it has no impact on anybody's build
process.

                        regards, tom lane

[1] https://www.postgresql.org/message-id/flat/A55A7FC9-FA60-47FE-98B5-139CDC57CE6E%40gmail.com


diff --git a/aclocal.m4 b/aclocal.m4
index bfd34ecec8..5e22482cd5 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -5,7 +5,6 @@ m4_include([config/ax_pthread.m4])
 m4_include([config/c-compiler.m4])
 m4_include([config/c-library.m4])
 m4_include([config/check_decls.m4])
-m4_include([config/docbook.m4])
 m4_include([config/general.m4])
 m4_include([config/libtool.m4])
 m4_include([config/llvm.m4])
diff --git a/config/docbook.m4 b/config/docbook.m4
deleted file mode 100644
index 34b829eade..0000000000
--- a/config/docbook.m4
+++ /dev/null
@@ -1,40 +0,0 @@
-# config/docbook.m4
-
-# PGAC_PATH_XMLLINT
-# -----------------
-AC_DEFUN([PGAC_PATH_XMLLINT],
-[PGAC_PATH_PROGS(XMLLINT, xmllint)])
-
-
-# PGAC_CHECK_DOCBOOK(VERSION)
-# ---------------------------
-AC_DEFUN([PGAC_CHECK_DOCBOOK],
-[AC_REQUIRE([PGAC_PATH_XMLLINT])
-AC_CACHE_CHECK([for DocBook XML V$1], [pgac_cv_check_docbook],
-[cat >conftest.xml <<EOF
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V$1//EN" "http://www.oasis-open.org/docbook/xml/$1/docbookx.dtd">
-<book>
- <title>test</title>
- <chapter>
-  <title>random</title>
-   <sect1>
-    <title>testsect</title>
-    <para>text</para>
-  </sect1>
- </chapter>
-</book>
-EOF
-
-pgac_cv_check_docbook=no
-
-if test -n "$XMLLINT"; then
-  $XMLLINT --noout --valid conftest.xml 1>&AS_MESSAGE_LOG_FD 2>&1
-  if test $? -eq 0; then
-    pgac_cv_check_docbook=yes
-  fi
-fi
-rm -f conftest.xml])
-
-have_docbook=$pgac_cv_check_docbook
-AC_SUBST([have_docbook])
-])# PGAC_CHECK_DOCBOOK
diff --git a/configure b/configure
index dd64692345..273ff0f6f9 100755
--- a/configure
+++ b/configure
@@ -633,7 +633,6 @@ PROVE
 FOP
 XSLTPROC
 DBTOEPUB
-have_docbook
 XMLLINT
 TCL_SHLIB_LD_LIBS
 TCL_SHARED_BUILD
@@ -18548,7 +18547,7 @@ fi
 fi
 
 #
-# Check for DocBook and tools
+# Check for documentation-building tools
 #
 if test -z "$XMLLINT"; then
   for ac_prog in xmllint
@@ -18604,42 +18603,6 @@ $as_echo_n "checking for XMLLINT... " >&6; }
 $as_echo "$XMLLINT" >&6; }
 fi
 
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for DocBook XML V4.5" >&5
-$as_echo_n "checking for DocBook XML V4.5... " >&6; }
-if ${pgac_cv_check_docbook+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat >conftest.xml <<EOF
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
-<book>
- <title>test</title>
- <chapter>
-  <title>random</title>
-   <sect1>
-    <title>testsect</title>
-    <para>text</para>
-  </sect1>
- </chapter>
-</book>
-EOF
-
-pgac_cv_check_docbook=no
-
-if test -n "$XMLLINT"; then
-  $XMLLINT --noout --valid conftest.xml 1>&5 2>&1
-  if test $? -eq 0; then
-    pgac_cv_check_docbook=yes
-  fi
-fi
-rm -f conftest.xml
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $pgac_cv_check_docbook" >&5
-$as_echo "$pgac_cv_check_docbook" >&6; }
-
-have_docbook=$pgac_cv_check_docbook
-
-
 if test -z "$DBTOEPUB"; then
   for ac_prog in dbtoepub
 do
diff --git a/configure.ac b/configure.ac
index 748fb50236..bade2e0993 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2237,10 +2237,9 @@ if test "$with_python" = yes; then
 fi
 
 #
-# Check for DocBook and tools
+# Check for documentation-building tools
 #
-PGAC_PATH_XMLLINT
-PGAC_CHECK_DOCBOOK(4.5)
+PGAC_PATH_PROGS(XMLLINT, xmllint)
 PGAC_PATH_PROGS(DBTOEPUB, dbtoepub)
 PGAC_PATH_PROGS(XSLTPROC, xsltproc)
 PGAC_PATH_PROGS(FOP, fop)
Reply | Threaded
Open this post in threaded view
|

Re: Documentation building broken in CFBot

Peter Eisentraut-7
On 2020-11-26 18:24, Tom Lane wrote:

> This came up again today on another thread [1], so I took a second look
> and confirmed that configure's test is completely dead code.  So here is
> a patch to remove it outright, mooting the question of whether it ought
> to use --no-net.
>
> After removing PGAC_CHECK_DOCBOOK, there wasn't much left of docbook.m4,
> and what there was had little to do with docbook; so I chose to just
> remove that file altogether.
>
> This is actually entirely independent of Peter's patch.  I'm tempted
> to propose that we could back-patch it and thereby save some configure
> cycles for developers, since it has no impact on anybody's build
> process.

Yes, this seems fine.  docbook.m4 used to do more interesting things,
when we had DSSSL, and no catalog mechanisms, and generally more
complicated installations.  It also served as a sort of test suite, when
if someone complained that they can't build the documentation, we could
look at config.log to see if their tools were installed correctly.  But
right now it's not that interesting anymore.

Backpatching to PG11 should be okay.  Before that, it's different tools.


Reply | Threaded
Open this post in threaded view
|

Re: Documentation building broken in CFBot

Peter Eisentraut-7
In reply to this post by Tom Lane-2
On 2020-11-13 15:58, Tom Lane wrote:

> Peter Eisentraut <[hidden email]> writes:
>> On 2020-11-11 21:04, Daniel Gustafsson wrote:
>>> On 11 Nov 2020, at 16:43, Tom Lane <[hidden email]> wrote:
>>>> I wonder if we should start passing "--nonet" to xmllint et al.
>
>> How about this patch.
>
> This looks like it probably works as far as the actual build goes, but
> could we change configure's call of xmllint likewise?  On a lot of my test
> machines (where, as a rule, I don't install DocBook; but xmllint may exist
> anyway), that probe for the docbook DTDs is the slowest step in configure,
> and not by a small margin.
>
> Actually, I kinda wonder why we bother probing for that at all; it doesn't
> look like anything is done with have_docbook.

We could change the call in configure to something like

PGAC_PATH_PROGS(XMLLINT, 'xmllint --nonet')

But the unfortunate effect of that would be to make it harder for casual
contributors to build the documentation.  For example, on a new MacBook,
the documentation builds out of the box without needing to install
anything at all.  That's a pretty big upgrade over 10 years ago. :)

I suggest if someone wants to turn off the current behavior, they can set

XMLLINT='xmllint --nonet'
XSLTPROC='xsltproc --nonet'

in the environment, and it will get picked up automatically.


Reply | Threaded
Open this post in threaded view
|

Re: Documentation building broken in CFBot

Tom Lane-2
In reply to this post by Peter Eisentraut-7
Peter Eisentraut <[hidden email]> writes:
> On 2020-11-26 18:24, Tom Lane wrote:
>> This came up again today on another thread [1], so I took a second look
>> and confirmed that configure's test is completely dead code.  So here is
>> a patch to remove it outright, mooting the question of whether it ought
>> to use --no-net.

> Yes, this seems fine.  docbook.m4 used to do more interesting things,
> when we had DSSSL, and no catalog mechanisms, and generally more
> complicated installations.  It also served as a sort of test suite, when
> if someone complained that they can't build the documentation, we could
> look at config.log to see if their tools were installed correctly.  But
> right now it's not that interesting anymore.

Check.

> Backpatching to PG11 should be okay.  Before that, it's different tools.

Ah, I see there used to be more things in docbook.m4, so removing the
file altogether isn't feasible before v11.  But we could still drop
the PGAC_CHECK_DOCBOOK macro, no?  Even in the older branches, there
is nothing paying attention to have_docbook.

                        regards, tom lane


Reply | Threaded
Open this post in threaded view
|

Re: Documentation building broken in CFBot

Tom Lane-2
In reply to this post by Peter Eisentraut-7
Peter Eisentraut <[hidden email]> writes:
> We could change the call in configure to something like

> PGAC_PATH_PROGS(XMLLINT, 'xmllint --nonet')

> But the unfortunate effect of that would be to make it harder for casual
> contributors to build the documentation.  For example, on a new MacBook,
> the documentation builds out of the box without needing to install
> anything at all.  That's a pretty big upgrade over 10 years ago. :)

I agree that that has its advantages.  To me, the big problem here is
with configure's call, because that is executed whether or not you want
to build the documentation.  If we flushed PGAC_CHECK_DOCBOOK, then
I'd only about 10% care whether we make the other change at all, or
whether --nonet is the default or not.

                        regards, tom lane


Reply | Threaded
Open this post in threaded view
|

Re: Documentation building broken in CFBot

Peter Eisentraut-7
In reply to this post by Tom Lane-2
On 2020-11-27 18:53, Tom Lane wrote:

>> Yes, this seems fine.  docbook.m4 used to do more interesting things,
>> when we had DSSSL, and no catalog mechanisms, and generally more
>> complicated installations.  It also served as a sort of test suite, when
>> if someone complained that they can't build the documentation, we could
>> look at config.log to see if their tools were installed correctly.  But
>> right now it's not that interesting anymore.
>
> Check.
>
>> Backpatching to PG11 should be okay.  Before that, it's different tools.
>
> Ah, I see there used to be more things in docbook.m4, so removing the
> file altogether isn't feasible before v11.  But we could still drop
> the PGAC_CHECK_DOCBOOK macro, no?  Even in the older branches, there
> is nothing paying attention to have_docbook.

Well, my point of having this as a mini test suite of the installation
still applies there, especially since it uses the old tool set that is
more difficult to install correctly.  Those old tools have no network
functionality, so there is really no configure speed to be gained.  I
would leave it alone.

In any case, note that there is also documentation about this at
<https://www.postgresql.org/docs/devel/docguide-toolsets.html#DOCGUIDE-TOOLSETS-CONFIGURE>
that would need to be updated to the new behavior.  I think the phrase
"If xmllint was not found then some of the following tests will be
skipped." could be removed, since it referred to the DocBook test about
to be removed.


12