Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

0.9.2: pep517 based build fails #137

Open
kloczek opened this issue Mar 31, 2024 · 2 comments
Open

0.9.2: pep517 based build fails #137

kloczek opened this issue Mar 31, 2024 · 2 comments

Comments

@kloczek
Copy link

kloczek commented Mar 31, 2024

Looks like something is wrong

+ /usr/bin/python3 -sBm build -w --no-isolation
* Getting build dependencies for wheel...
error in sphinxcontrib-mermaid setup command: Distribution contains no modules or packages for namespace package 'sphinxcontrib'
@kloczek
Copy link
Author

kloczek commented Mar 31, 2024

BTW look like sphinxcontrib-mermaid still uses in sphinxcontrib/init.py old style namespaces using pkg_resources which is now marked as deprecated.
https://packaging.python.org/en/latest/guides/packaging-namespace-packages/#pkgutil-style-namespace-packages

@kloczek
Copy link
Author

kloczek commented Apr 7, 2024

After remove sphinxcontrib/init.py and apply below patch

--- a/setup.py
+++ b/setup.py
@@ -59,5 +59,4 @@
     platforms="any",
     packages=find_packages(),
     include_package_data=True,
-    namespace_packages=["sphinxcontrib"],
 )

I've hit another issue on building sphinxcontrib-mermaid documentation

+ /usr/bin/sphinx-build -n -T -b man docs build/sphinx/man
Running Sphinx v7.2.6
making output directory... done
WARNING: html_static_path entry '_static' does not exist
building [mo]: targets for 0 po files that are out of date
writing output...
building [man]: all manpages
updating environment: [new config] 2 added, 0 changed, 0 removed
reading sources... [ 50%] index
Traceback (most recent call last):
  File "/usr/lib/python3.10/site-packages/sphinx/util/__init__.py", line 233, in import_object
    obj = getattr(obj, name)
  File "/usr/lib/python3.10/site-packages/sphinx/util/__init__.py", line 291, in __getattr__
    raise AttributeError(msg)
AttributeError: module 'sphinx.util' has no attribute 'SphinxParallelError'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.10/site-packages/sphinx/util/__init__.py", line 235, in import_object
    obj = import_module(modname)
  File "/usr/lib64/python3.10/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1004, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'sphinx.util.SphinxParallelError'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/tkloczko/rpmbuild/BUILD/sphinxcontrib-mermaid-0.9.2/sphinxcontrib/autoclassdiag.py", line 17, in get_classes
    obj = import_object(cls_or_module)
  File "/usr/lib/python3.10/site-packages/sphinx/util/__init__.py", line 242, in import_object
    raise ExtensionError('Could not import %s' % objname, exc) from exc
sphinx.errors.ExtensionError: Could not import sphinx.util.SphinxParallelError (exception: No module named 'sphinx.util.SphinxParallelError')

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.10/site-packages/sphinx/cmd/build.py", line 298, in build_main
    app.build(args.force_all, args.filenames)
  File "/usr/lib/python3.10/site-packages/sphinx/application.py", line 355, in build
    self.builder.build_update()
  File "/usr/lib/python3.10/site-packages/sphinx/builders/__init__.py", line 290, in build_update
    self.build(['__all__'], to_build)
  File "/usr/lib/python3.10/site-packages/sphinx/builders/__init__.py", line 313, in build
    updated_docnames = set(self.read())
  File "/usr/lib/python3.10/site-packages/sphinx/builders/__init__.py", line 420, in read
    self._read_serial(docnames)
  File "/usr/lib/python3.10/site-packages/sphinx/builders/__init__.py", line 441, in _read_serial
    self.read_doc(docname)
  File "/usr/lib/python3.10/site-packages/sphinx/builders/__init__.py", line 498, in read_doc
    publisher.publish()
  File "/usr/lib/python3.10/site-packages/docutils/core.py", line 234, in publish
    self.document = self.reader.read(self.source, self.parser,
  File "/usr/lib/python3.10/site-packages/sphinx/io.py", line 105, in read
    self.parse()
  File "/usr/lib/python3.10/site-packages/docutils/readers/__init__.py", line 76, in parse
    self.parser.parse(self.input, document)
  File "/usr/lib/python3.10/site-packages/sphinx/parsers.py", line 81, in parse
    self.statemachine.run(inputlines, document, inliner=self.inliner)
  File "/usr/lib/python3.10/site-packages/docutils/parsers/rst/states.py", line 169, in run
    results = StateMachineWS.run(self, input_lines, input_offset,
  File "/usr/lib/python3.10/site-packages/docutils/statemachine.py", line 233, in run
    context, next_state, result = self.check_line(
  File "/usr/lib/python3.10/site-packages/docutils/statemachine.py", line 445, in check_line
    return method(match, context, next_state)
  File "/usr/lib/python3.10/site-packages/docutils/parsers/rst/states.py", line 2785, in underline
    self.section(title, source, style, lineno - 1, messages)
  File "/usr/lib/python3.10/site-packages/docutils/parsers/rst/states.py", line 325, in section
    self.new_subsection(title, lineno, messages)
  File "/usr/lib/python3.10/site-packages/docutils/parsers/rst/states.py", line 391, in new_subsection
    newabsoffset = self.nested_parse(
  File "/usr/lib/python3.10/site-packages/docutils/parsers/rst/states.py", line 279, in nested_parse
    state_machine.run(block, input_offset, memo=self.memo,
  File "/usr/lib/python3.10/site-packages/docutils/parsers/rst/states.py", line 195, in run
    results = StateMachineWS.run(self, input_lines, input_offset)
  File "/usr/lib/python3.10/site-packages/docutils/statemachine.py", line 233, in run
    context, next_state, result = self.check_line(
  File "/usr/lib/python3.10/site-packages/docutils/statemachine.py", line 445, in check_line
    return method(match, context, next_state)
  File "/usr/lib/python3.10/site-packages/docutils/parsers/rst/states.py", line 2355, in explicit_markup
    nodelist, blank_finish = self.explicit_construct(match)
  File "/usr/lib/python3.10/site-packages/docutils/parsers/rst/states.py", line 2367, in explicit_construct
    return method(self, expmatch)
  File "/usr/lib/python3.10/site-packages/docutils/parsers/rst/states.py", line 2104, in directive
    return self.run_directive(
  File "/usr/lib/python3.10/site-packages/docutils/parsers/rst/states.py", line 2154, in run_directive
    result = directive_instance.run()
  File "/home/tkloczko/rpmbuild/BUILD/sphinxcontrib-mermaid-0.9.2/sphinxcontrib/mermaid.py", line 114, in run
    mmcode = self.get_mm_code()
  File "/home/tkloczko/rpmbuild/BUILD/sphinxcontrib-mermaid-0.9.2/sphinxcontrib/mermaid.py", line 165, in get_mm_code
    return class_diagram(
  File "/home/tkloczko/rpmbuild/BUILD/sphinxcontrib-mermaid-0.9.2/sphinxcontrib/autoclassdiag.py", line 48, in class_diagram
    for cls in get_classes(*cls_or_modules, strict=strict):
  File "/home/tkloczko/rpmbuild/BUILD/sphinxcontrib-mermaid-0.9.2/sphinxcontrib/autoclassdiag.py", line 19, in get_classes
    raise MermaidError(str(e))
sphinxcontrib.exceptions.MermaidError: Could not import sphinx.util.SphinxParallelError (exception: No module named 'sphinx.util.SphinxParallelError')

Mermaid error:
Could not import sphinx.util.SphinxParallelError (exception: No module named 'sphinx.util.SphinxParallelError')

it looks like sphinxcontrib-mermaid is not ready for sphinx 7.2.x 🤔

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant