-
Notifications
You must be signed in to change notification settings - Fork 678
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
Documentation build hangs indefinitely for pdfhtml on master #1308
Documentation build hangs indefinitely for pdfhtml on master #1308
Comments
This seems to be an issue during the jb build docs --builder=custom --custom-builder=singlehtml the However when I run the
|
the plot thickens :-) I think you're right that this is probably some kinda infinite recursion kinda thing, or javascript library problem or something |
So I commented out the I then tried adding I have tried a few things this afternoon in #1307. I think the main issue is |
Hmmm - I didn't realize that |
Note |
thanks @chrisjsewell yeah in #1307 I found the
|
No the key thing here is that you only need to register a node if they will actually reach the builder. |
Documenting a list of packages that will need to be updated for
|
@chrisjsewell @choldgraf happy to start coordinating updates for these packages via PR's but this might take some time to resolve for #1293 as these are split across a diverse set of repos that aren't within the I think this would be the best long term strategy (i.e. adding support for Update: Talked this idea through with @AakashGfude. It might not be feasible as the nodes are loaded during the |
I did a bit of digging and it looks like this could actually be done. I am just not sure if assigning After the sphinx.app is instantiated we do have access to:
which records the handlers for So we could loop through any Then we can go trough all the packages and update them with Update: Bummer -- it looks like |
The if builder == "singlehtml":
singlehtml_node_names = app.registry.translation_handlers['singlehtml'].keys()
html_nodes = app.registry.translation_handlers['html']
#Recover registered nodes from docutils
registered_nodes = {}
from sphinx.util import docutils
for node in docutils.additional_nodes:
registered_nodes[node.__name__] = node
# Set missing nodes with visit,depart methods from html
for node_name, methods in html_nodes.items():
if node_name not in singlehtml_node_names:
try:
app.registry.add_translation_handlers(registered_nodes[node_name], singlehtml=methods)
except:
raise ValueError(f"{node_name} is missing from the docutils registry") and could be added here but still not sure this is a good idea or not. This does seem to fix a lot of The resulting |
@chrisjsewell any thoughts on the above proposal to add any missing |
I have checked in with the https://groups.google.com/g/sphinx-dev/c/J4if9AvxNaA/m/76yAj4vCDwAJ |
@chrisjsewell @choldgraf I heard from Takeshi (on the dev community channel) and we may be able to have a look at adjusting this upstream in |
Great news! Hopefully he is cool putting a fix into 3.x |
@choldgraf I am trying to dig in to the original issue here with
I find I get the |
I have changed the There is discussion upstream to add This would however target |
With the latest |
Think we could tie this issue to that PR so that it's closed when the PR is merged, rather than closing this issue straight away? |
Describe the bug
In #1283 we re-worked the documentation structure a bit. This seems to have introduced a bug where the
singlepage
PDF build via HTML now hangs indefinitely.To Reproduce
Build the book PDF via HTML with
this should hang indefinitely
The text was updated successfully, but these errors were encountered: