Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1716532
Summary: | docutils.writers._html_base.SimpleListChecker: visiting unknown node type: compact_paragraph | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Miro Hrončok <mhroncok> |
Component: | python-sphinxtesters | Assignee: | Jerry James <loganjerry> |
Status: | CLOSED NEXTRELEASE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | high | Docs Contact: | |
Priority: | unspecified | ||
Version: | 31 | CC: | infra-sig, kevin, loganjerry, matthew.brett |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
URL: | https://copr.fedorainfracloud.org/coprs/g/python/python3.8/package/python-sphinxtesters/ | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | If docs needed, set a value | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2019-08-13 19:51:44 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | |||
Bug Blocks: | 1686977, 1736513, 1736536, 1736543 |
Description
Miro Hrončok
2019-06-03 14:40:52 UTC
The build fails with multiple errors of this form: Traceback (most recent call last): File "/usr/lib/python3.8/site-packages/nose/suite.py", line 209, in run self.setUp() File "/usr/lib/python3.8/site-packages/nose/suite.py", line 292, in setUp self.setupContext(ancestor) File "/usr/lib/python3.8/site-packages/nose/suite.py", line 315, in setupContext try_run(context, names) File "/usr/lib/python3.8/site-packages/nose/util.py", line 471, in try_run return func() File "/builddir/build/BUILD/sphinxtesters-0.2.1/sphinxtesters/sphinxutils.py", line 367, in setup_class super(ModifiedPageBuilder, cls).setup_class() File "/builddir/build/BUILD/sphinxtesters-0.2.1/sphinxtesters/sphinxutils.py", line 187, in setup_class cls.build_source() File "/builddir/build/BUILD/sphinxtesters-0.2.1/sphinxtesters/sphinxutils.py", line 218, in build_source raise RuntimeError('page build failed with build error {}' RuntimeError: page build failed with build error <class 'docutils.writers._html_base.SimpleListChecker'> visiting unknown node type: compact_paragraph That looks like a problem in docutils to me. The sphinxtesters code is merely reporting that docutils threw an exception. It seems that docutils needs to be taught about the compact_paragraph node type. Indeed, the list of node types starting on line 1798 of /usr/lib/python3.8/site-packages/docutils/nodes.py does not include compact_paragraph. I'm assigning this bug to python-docutils. If you disagree that it is a docutils problem, tell me why and assign it back. Fedora Infrastructure SIG, are you responsive? Docutils is maintained by mstuchli and oddshocks (both gone AFAIK). Also, more than just python-sphinxtesters is affected by this; python-nb2plots and python-texext failed the mass rebuild in part due to docutils throwing an error about the compact_paragraph node type. ok, as a first stab, I am updating to 0.15.2... just built it in rawhide. Can you look and see if that solves this issue? https://koji.fedoraproject.org/koji/taskinfo?taskID=36749901 I don't see any obvious fixes for this, but they may have solved it some other way. If not, we can try and ping upstream on it. 0.15.2-1.fc31 doesn't change the failure. I looked at this yesterday and came up with some patches, but none of them worked quite right. So, I think we need to talk to upstream. Would one of you be willing to file a bug on this? Or I will try and do so before I head out tomorrow... I'm "upstream" - this should be fixed in the latest PyPI release. Hi Matthew. PyPi says the latest release is 0.15.2 which, as was noted in comment 5, does not fix the problem. The definition of node_class_names on trunk still does not include compact_paragraph: https://sourceforge.net/p/docutils/code/HEAD/tree/trunk/docutils/docutils/nodes.py Yes, sorry, I should have been clearer. I'm the author of 'sphinxtesters' - the paackage that generates the error above. The error is not a Docutils error, it was breakage from Sphinxtesters' attempt to isolate a new Sphinx application instance from the Docutils global state. Specifically, Sphinx applications alter various bits of global state in Docutils, and among the changes, Sphinx applications insert various 'visit_' and 'depart_' methods into the Docutils "nodes.GenericNodeVisitor" class. One of these is "visit_compact_paragraph" - where "compact_paragraph" is a node type defined by Sphinx. Sphinxtesters has to work round this to allow multiple Sphinx applications that do not clash with each other. It does this by caching the Docutils state, including the methods of "nodes.GenericNodeVisitor", running the Sphinx application init and processing, then restoring the cached state. When Sphinx 2.0 was released, this hack in Sphinxtesters started to fail. Specifically, the hack was not any longer correctly restoring the `visit_compact_paragraph` (and other Sphinx-specific visit_ / depart_ methods) to the nodes.GenericNodeVisitor class in Docutils. I fixed this in the latest release of Sphinxtesters. Incidentally, the packages "Texext" and "nb2plots" use Sphinxtesters, which is why they were showing the same errors. Excellent news! Thanks for figuring that one out. This bug appears to have been reported against 'rawhide' during the Fedora 31 development cycle. Changing version to '31'. This bug appears to have been reported against 'rawhide' during the Fedora 31 development cycle. Changing version to 31. Got it. Sorry for being dense. I'll update to the new version and get everything rebuilt today. Thanks for the fix! I should ask the obvious question: do you want to maintain, or comaintain, the python-sphinxtesters package in Fedora? New version built in Rawhide. I don't know much about Fedora packaging. Happy to co-maintain, if that's useful to you. |