with the latest release of Sphinx 4 the sphinxcontrib.plantuml extension fails to run and produces an exception.
Steps to reproduce
Install the latest Sphinx release and the extension
Build docs
> pip install sphinx sphinxcontrib-plantuml
Requirement already satisfied: sphinx in /home/andi/virtualenvs/smelt/lib/python3.8/site-packages (4.0.1)
Requirement already satisfied: sphinxcontrib-plantuml in /home/andi/virtualenvs/smelt/lib/python3.8/site-packages (0.20.1)
[... output stripped ...]
> make clean html
Removing everything under 'build'...
Sphinx v4.0.1 in Verwendung
Extension error:
Could not import extension sphinxcontrib.plantuml (exception: cannot import name 'ENOENT' from 'sphinx.util.osutil' (/home/andi/virtualenvs/smelt/lib/python3.8/site-packages/sphinx/util/osutil.py))
make: *** [Makefile:19: html] Fehler 2
More details are available when running sphinx-build:
> sphinx-build -a -T -b html ../doc/source ../public
Running Sphinx v4.0.1
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/sphinx/registry.py", line 420, in load_extension
mod = import_module(extname)
File "/usr/lib64/python3.6/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 994, in _gcd_import
File "<frozen importlib._bootstrap>", line 971, in _find_and_load
File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 678, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "/usr/lib/python3.6/site-packages/sphinxcontrib/plantuml.py", line 33, in <module>
from sphinx.util.osutil import (
ImportError: cannot import name 'ENOENT'
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/sphinx/cmd/build.py", line 279, in build_main
args.tags, args.verbosity, args.jobs, args.keep_going)
File "/usr/lib/python3.6/site-packages/sphinx/application.py", line 243, in __init__
self.setup_extension(extension)
File "/usr/lib/python3.6/site-packages/sphinx/application.py", line 400, in setup_extension
self.registry.load_extension(self, extname)
File "/usr/lib/python3.6/site-packages/sphinx/registry.py", line 424, in load_extension
err) from err
sphinx.errors.ExtensionError: Could not import extension sphinxcontrib.plantuml (exception: cannot import name 'ENOENT')
Extension error:
Could not import extension sphinxcontrib.plantuml (exception: cannot import name 'ENOENT')
Workaround
After downgrading to Sphinx<4 the documents are build again correctly.
with the latest release of Sphinx 4 the
sphinxcontrib.plantuml
extension fails to run and produces an exception.Steps to reproduce
More details are available when running
sphinx-build
:Workaround
After downgrading to
Sphinx<4
the documents are build again correctly.