linux/Documentation/sphinx
Akira Yokosawa 0df819cac1 docs: kernel_include.py: Cope with docutils 0.21
commit d43ddd5c91 upstream.

Running "make htmldocs" on a newly installed Sphinx 7.3.7 ends up in
a build error:

    Sphinx parallel build error:
    AttributeError: module 'docutils.nodes' has no attribute 'reprunicode'

docutils 0.21 has removed nodes.reprunicode, quote from release note [1]:

  * Removed objects:

    docutils.nodes.reprunicode, docutils.nodes.ensure_str()
        Python 2 compatibility hacks

Sphinx 7.3.0 supports docutils 0.21 [2]:

kernel_include.py, whose origin is misc.py of docutils, uses reprunicode.

Upstream docutils removed the offending line from the corresponding file
(docutils/docutils/parsers/rst/directives/misc.py) in January 2022.
Quoting the changelog [3]:

    Deprecate `nodes.reprunicode` and `nodes.ensure_str()`.

    Drop uses of the deprecated constructs (not required with Python 3).

Do the same for kernel_include.py.

Tested against:
  - Sphinx 2.4.5 (docutils 0.17.1)
  - Sphinx 3.4.3 (docutils 0.17.1)
  - Sphinx 5.3.0 (docutils 0.18.1)
  - Sphinx 6.2.1 (docutils 0.19)
  - Sphinx 7.2.6 (docutils 0.20.1)
  - Sphinx 7.3.7 (docutils 0.21.2)

Link: http://www.docutils.org/RELEASE-NOTES.html#release-0-21-2024-04-09 [1]
Link: https://www.sphinx-doc.org/en/master/changes.html#release-7-3-0-released-apr-16-2024 [2]
Link: https://github.com/docutils/docutils/commit/c8471ce47a24 [3]
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Cc: stable@vger.kernel.org
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Link: https://lore.kernel.org/r/faf5fa45-2a9d-4573-9d2e-3930bdc1ed65@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-05-25 16:20:19 +02:00
..
automarkup.py docs: Enable usage of relative paths to docs on automarkup 2021-02-04 16:23:43 -07:00
cdomain.py Move our minimum Sphinx version to 1.7 2021-02-01 16:29:12 -07:00
kernel_abi.py Move our minimum Sphinx version to 1.7 2021-02-01 16:29:12 -07:00
kernel_feat.py Move our minimum Sphinx version to 1.7 2021-02-01 16:29:12 -07:00
kernel_include.py docs: kernel_include.py: Cope with docutils 0.21 2024-05-25 16:20:19 +02:00
kerneldoc.py Move our minimum Sphinx version to 1.7 2021-02-01 16:29:12 -07:00
kernellog.py Move our minimum Sphinx version to 1.7 2021-02-01 16:29:12 -07:00
kfigure.py Docs: drop Python 2 support 2021-02-01 17:17:14 -07:00
load_config.py docs: Fix the docs build with Sphinx 6.0 2023-01-18 11:48:48 +01:00
maintainers_include.py Docs: drop Python 2 support 2021-02-01 17:17:14 -07:00
parallel-wrapper.sh docs: Fix empty parallelism argument 2020-02-25 03:11:04 -07:00
parse-headers.pl tweewide: Fix most Shebang lines 2020-12-08 23:30:04 +09:00
requirements.txt docs: sphinx/requirements: Limit jinja2<3.1 2022-04-08 14:22:49 +02:00
rstFlatTable.py docs: sphinx: Fix couple of spellings in the file rstFlatTable.py 2021-03-06 17:36:50 -07:00