Re: [PATCH v2 00/15] Some improvements and fixes for the doc build system
From: Mauro Carvalho Chehab
Date: Sun Jun 22 2025 - 01:48:24 EST
Em Sat, 21 Jun 2025 14:09:39 -0600
Jonathan Corbet <corbet@xxxxxxx> escreveu:
> Mauro Carvalho Chehab <mchehab+huawei@xxxxxxxxxx> writes:
>
> > Hi Jon,
> >
> > This series contain patches I made while working at the parser-yaml.
> > They aren't directly related to it. Instead, they address some issues
> > at the build system and provide test tools for building docs.
>
> So as you saw I'd applied the previous set - but I've undone that.
> Something in the first patch (the conf.py changes) breaks the dependency
> detection so that every build turns into a full build. Just run
> "make htmldocs" twice in a row to see what happens. That somehow needs
> to be fixed...
Tricky. When I originally wrote it, on the top of 8.x, there is no need
to add a connect event. For older versions, this is a need.
I ended adding a 'builder-inited', but this is too late. Changing the
event to 'config-inited' address it.
I'll fold the patch below at patch 01/15.
Regards,
Mauro
diff --git a/Documentation/conf.py b/Documentation/conf.py
index 4ba4ee45e599..91ce2b1c33cc 100644
--- a/Documentation/conf.py
+++ b/Documentation/conf.py
@@ -41,7 +41,7 @@ dyn_exclude_patterns = ['output']
# Properly handle include/exclude patterns
# ----------------------------------------
-def update_patterns(app):
+def update_patterns(app, config):
"""
On Sphinx, all directories are relative to what it is passed as
@@ -65,7 +65,7 @@ def update_patterns(app):
if rel_path.startswith("../"):
continue
- app.config.include_patterns.append(rel_path)
+ config.include_patterns.append(rel_path)
# setup exclude_patterns dynamically
for p in dyn_exclude_patterns:
@@ -75,7 +75,7 @@ def update_patterns(app):
if rel_path.startswith("../"):
continue
- app.config.exclude_patterns.append(rel_path)
+ config.exclude_patterns.append(rel_path)
# helper
# ------
@@ -574,4 +574,4 @@ kerneldoc_srctree = '..'
loadConfig(globals())
def setup(app):
- app.connect('builder-inited', update_patterns)
+ app.connect('config-inited', update_patterns)
Thanks,
Mauro