Replace the abandoned sphinxcontrib-blockdiag and sphinxcontrib-seqdiag
Sphinx extensions with sphinxcontrib-mermaid. Remove Pillow dependency
which was only required for blockdiag server-side image rendering.
Mermaid renders diagrams client-side via JavaScript, requiring no
system packages or native image libraries.
Bump basepython from python3.12 to python3.13 to match
.readthedocs.yaml — blockdiag was the blocker preventing this
(uses removed ast.NameConstant on 3.12+, and pkg_resources on
setuptools 82+).
None of the documentation in this repo uses blockdiag or seqdiag
directives; this is a config-only cleanup.
Issue-ID: CIMAN-33
Change-Id: Icfa7c30a05bd797cb497392dce30a8634f3f6f9f
Signed-off-by: Claude <noreply@anthropic.com>
Signed-off-by: Matthew Watkins <mwatkins@linuxfoundation.org>
extensions = [
'sphinx.ext.intersphinx',
'sphinx.ext.graphviz',
- 'sphinxcontrib.blockdiag',
- 'sphinxcontrib.seqdiag',
+ 'sphinxcontrib.mermaid',
'sphinxcontrib.openapi',
'sphinxcontrib.plantuml',
]
# Compatibility
setuptools>=65.0.0
-Pillow>=10.1.0
# Core Sphinx
sphinx>=7.1.2
sphinx-rtd-theme>=2.0.0
# Diagram extensions
-sphinxcontrib-blockdiag>=3.0.0
-sphinxcontrib-seqdiag>=3.0.0
+sphinxcontrib-mermaid>=1.0.0
sphinxcontrib-plantuml>=0.27
# API documentation
skipsdist = true
[testenv:docs]
-basepython = python3.12
+basepython = python3.13
deps =
setuptools>=65.0.0
-r{toxinidir}/requirements-docs.txt
sh
[testenv:docs-linkcheck]
-basepython = python3.12
+basepython = python3.13
deps =
setuptools>=65.0.0
-r{toxinidir}/requirements-docs.txt
# Compatibility
setuptools===69.0.3
-Pillow===10.4.0
# Core Sphinx
sphinx===7.1.2
sphinx-rtd-theme===2.0.0
# Diagram extensions
-sphinxcontrib-blockdiag===3.0.0
-sphinxcontrib-seqdiag===3.0.0
+sphinxcontrib-mermaid===2.0.0
sphinxcontrib-plantuml===0.29
# API documentation