diff --git a/CHANGES b/CHANGES index 547533a9bf1..99a2ab9bfb1 100644 --- a/CHANGES +++ b/CHANGES @@ -17,6 +17,8 @@ Bugs fixed ---------- * #10594: HTML Theme: field term colons are doubled if using Docutils 0.18+ +* #10596: Build failure if Docutils version is 0.18 (not 0.18.1) due + to missing ``Node.findall()`` Testing -------- diff --git a/sphinx/util/docutils.py b/sphinx/util/docutils.py index e1fd780963b..b2944ec28aa 100644 --- a/sphinx/util/docutils.py +++ b/sphinx/util/docutils.py @@ -550,9 +550,9 @@ def unknown_visit(self, node: Node) -> None: # Node.findall() is a new interface to traverse a doctree since docutils-0.18. -# This applies a patch docutils-0.17 or older to be available Node.findall() +# This applies a patch to docutils up to 0.18 inclusive to provide Node.findall() # method to use it from our codebase. -if docutils.__version_info__ < (0, 18): +if docutils.__version_info__ <= (0, 18): def findall(self, *args, **kwargs): return iter(self.traverse(*args, **kwargs))