docs: Validation error with xmllint 2.15.0

Started by Erik Wienhold4 months ago2 messages
#1Erik Wienhold
ewie@ewie.name
1 attachment(s)

I just upgraded to libxml2 2.15.0 and now the docs no longer validate
with the following error when running make html:

/usr/bin/xmllint --nonet --path . --path . --output postgres-full.xml --noent --valid postgres.sgml
ref/pg_combinebackup.sgml:317: validity error : standalone: normalization of attribute linkend on xref by external subset declaration
state of the cluster using <xref linkend="app-pgchecksums "/> is
^

Downgrading to libxml2 2.14.6 fixes the validation. There's also an
unreleased fix [1]https://gitlab.gnome.org/GNOME/libxml2/-/commit/da45a190f718e8e2f0e3d2a6325ffa23abc8b90c for this regression. But I figure that it's best to
just remove the insignificant whitespace with the attached patch.

[1]: https://gitlab.gnome.org/GNOME/libxml2/-/commit/da45a190f718e8e2f0e3d2a6325ffa23abc8b90c

--
Erik Wienhold

Attachments:

0001-doc-Remove-stray-trailing-whitespace-in-xref-linkend.patchtext/plain; charset=us-asciiDownload
From dedb8e544e827b93d4e78a4fd6d0324dc332ac04 Mon Sep 17 00:00:00 2001
From: Erik Wienhold <ewie@ewie.name>
Date: Mon, 22 Sep 2025 02:58:16 +0200
Subject: [PATCH] doc: Remove stray trailing whitespace in xref linkend
 attribute

Commit 205db0114e03 extended the pg_combinebackup docs with markup that
fails to validate with xmllint 2.15.0 when building the docs, producing
the following error:

    /usr/bin/xmllint --nonet --path . --path . --output postgres-full.xml --noent --valid postgres.sgml
    ref/pg_combinebackup.sgml:317: validity error : standalone: normalization of attribute linkend on xref by external subset declaration
       state of the cluster using <xref linkend="app-pgchecksums "/> is
                                                                  ^

This is, however, just a regression in xmllint that is already fixed [1]
but not yet released.  Fix the markup anyway because the trailing
whitespace is insignificant.

[1] https://gitlab.gnome.org/GNOME/libxml2/-/commit/da45a190f718e8e2f0e3d2a6325ffa23abc8b90c
---
 doc/src/sgml/ref/pg_combinebackup.sgml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/doc/src/sgml/ref/pg_combinebackup.sgml b/doc/src/sgml/ref/pg_combinebackup.sgml
index 330a598f701..9a6d201e0b8 100644
--- a/doc/src/sgml/ref/pg_combinebackup.sgml
+++ b/doc/src/sgml/ref/pg_combinebackup.sgml
@@ -314,7 +314,7 @@ PostgreSQL documentation
 
   <para>
    To avoid this problem, taking a new full backup after changing the checksum
-   state of the cluster using <xref linkend="app-pgchecksums "/> is
+   state of the cluster using <xref linkend="app-pgchecksums"/> is
    recommended. Otherwise, you can disable and then optionally reenable
    checksums on the directory produced by <literal>pg_combinebackup</literal>
    in order to correct the problem.
-- 
2.51.0

#2Daniel Gustafsson
daniel@yesql.se
In reply to: Erik Wienhold (#1)
Re: docs: Validation error with xmllint 2.15.0

On 22 Sep 2025, at 03:50, Erik Wienhold <ewie@ewie.name> wrote:

Downgrading to libxml2 2.14.6 fixes the validation. There's also an
unreleased fix [1] for this regression. But I figure that it's best to
just remove the insignificant whitespace with the attached patch.

Agreed, not least because that makes all xref tags consistent in style which
has a value of its own. Will fix.

--
Daniel Gustafsson