From ec09cde52d18581a4ee6a699299e9f699cdc9567 Mon Sep 17 00:00:00 2001 From: Jakob Lykke Andersen Date: Thu, 24 Feb 2022 20:19:08 +0100 Subject: [PATCH 1/2] Make NodeFinder actually do sparse visiation Fixes michaeljones/breathe#807 --- breathe/renderer/sphinxrenderer.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/breathe/renderer/sphinxrenderer.py b/breathe/renderer/sphinxrenderer.py index 65a2d0d15..9c15cf72b 100644 --- a/breathe/renderer/sphinxrenderer.py +++ b/breathe/renderer/sphinxrenderer.py @@ -359,6 +359,12 @@ def visit_desc_signature_line(self, node): def visit_desc_content(self, node): self.content = node + # The SparseNodeVisitor seems to not actually be universally Sparse, + # but only for nodes known to Docutils. + # So if there are extensions with new node types in the content, + # then the visitation will fail. + # We anyway don't need to visit the actual content, so skip it. + raise nodes.SkipChildren def intersperse(iterable, delimiter): From 226cdf59e621b64ba460aadfb54a73895e07291b Mon Sep 17 00:00:00 2001 From: Jakob Lykke Andersen Date: Thu, 24 Feb 2022 20:22:48 +0100 Subject: [PATCH 2/2] Changes entry --- CHANGELOG.rst | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 69ce4f47b..37953d6b6 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -3,6 +3,12 @@ Change Log Inspired by `Keepachangelog.com `__. +- Unreleased + + - Fix internal ``NodeFinder`` visitor for when non-Docutils nodes are + present in the content of a directive. + `#812 `__ + - 2022-02-14 - **Breathe v4.33.1** - Avoid warning about multiple graphviz directives.