Blob Blame History Raw
From f0480ddd2d3cb04b784cf7ea697f792b45c689cc Mon Sep 17 00:00:00 2001
From: Mariusz Felisiak <felisiak.mariusz@gmail.com>
Date: Wed, 17 Nov 2021 12:31:25 +0100
Subject: [PATCH] Fixed crash building HTML docs since Sphinx 4.3.

See https://github.com/sphinx-doc/sphinx/commit/dd2ff3e911c751c06c81f494128fba56d8ecbafd.
---
 docs/_ext/djangodocs.py | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/docs/_ext/djangodocs.py b/docs/_ext/djangodocs.py
index dfc9e12682f3..2829d581cdb8 100644
--- a/docs/_ext/djangodocs.py
+++ b/docs/_ext/djangodocs.py
@@ -8,7 +8,7 @@
 from docutils import nodes
 from docutils.parsers.rst import Directive
 from docutils.statemachine import ViewList
-from sphinx import addnodes
+from sphinx import addnodes, version_info as sphinx_version
 from sphinx.builders.html import StandaloneHTMLBuilder
 from sphinx.directives.code import CodeBlock
 from sphinx.domains.std import Cmdoption
@@ -115,11 +115,17 @@ class DjangoHTMLTranslator(HTMLTranslator):
     def visit_table(self, node):
         self.context.append(self.compact_p)
         self.compact_p = True
-        self._table_row_index = 0  # Needed by Sphinx
+        # Needed by Sphinx.
+        if sphinx_version >= (4, 3):
+            self._table_row_indices.append(0)
+        else:
+            self._table_row_index = 0
         self.body.append(self.starttag(node, 'table', CLASS='docutils'))
 
     def depart_table(self, node):
         self.compact_p = self.context.pop()
+        if sphinx_version >= (4, 3):
+            self._table_row_indices.pop()
         self.body.append('</table>\n')
 
     def visit_desc_parameterlist(self, node):