Skip to content

Commit

Permalink
Merge branch '3.5.x' into 8943_update_translations
Browse files Browse the repository at this point in the history
  • Loading branch information
tk0miya committed Mar 6, 2021
2 parents bae8fb6 + cb14587 commit 3cd1030
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 11 deletions.
2 changes: 2 additions & 0 deletions CHANGES
Expand Up @@ -17,6 +17,8 @@ Bugs fixed
----------

* #8943: i18n: Crashed by broken translation messages in ES, EL and HR
* #8936: LaTeX: A custom LaTeX builder fails with unknown node error
* #8952: Exceptions raised in a Directive cause parallel builds to hang

Testing
--------
Expand Down
18 changes: 9 additions & 9 deletions sphinx/builders/latex/transforms.py
Expand Up @@ -42,7 +42,7 @@ class SubstitutionDefinitionsRemover(SphinxPostTransform):

# should be invoked after Substitutions process
default_priority = Substitutions.default_priority + 1
builders = ('latex',)
formats = ('latex',)

def run(self, **kwargs: Any) -> None:
for node in self.document.traverse(nodes.substitution_definition):
Expand All @@ -57,7 +57,7 @@ class ShowUrlsTransform(SphinxPostTransform):
.. note:: This transform is used for integrated doctree
"""
default_priority = 400
builders = ('latex',)
formats = ('latex',)

# references are expanded to footnotes (or not)
expanded = False
Expand Down Expand Up @@ -345,7 +345,7 @@ class LaTeXFootnoteTransform(SphinxPostTransform):
"""

default_priority = 600
builders = ('latex',)
formats = ('latex',)

def run(self, **kwargs: Any) -> None:
footnotes = list(self.document.traverse(nodes.footnote))
Expand Down Expand Up @@ -497,7 +497,7 @@ class BibliographyTransform(SphinxPostTransform):
...
"""
default_priority = 750
builders = ('latex',)
formats = ('latex',)

def run(self, **kwargs: Any) -> None:
citations = thebibliography()
Expand All @@ -516,7 +516,7 @@ class CitationReferenceTransform(SphinxPostTransform):
pending_xref nodes to citation_reference.
"""
default_priority = 5 # before ReferencesResolver
builders = ('latex',)
formats = ('latex',)

def run(self, **kwargs: Any) -> None:
domain = cast(CitationDomain, self.env.get_domain('citation'))
Expand All @@ -536,7 +536,7 @@ class MathReferenceTransform(SphinxPostTransform):
nodes to math_reference.
"""
default_priority = 5 # before ReferencesResolver
builders = ('latex',)
formats = ('latex',)

def run(self, **kwargs: Any) -> None:
equations = self.env.get_domain('math').data['objects']
Expand All @@ -551,7 +551,7 @@ def run(self, **kwargs: Any) -> None:
class LiteralBlockTransform(SphinxPostTransform):
"""Replace container nodes for literal_block by captioned_literal_block."""
default_priority = 400
builders = ('latex',)
formats = ('latex',)

def run(self, **kwargs: Any) -> None:
matcher = NodeMatcher(nodes.container, literal_block=True)
Expand All @@ -563,7 +563,7 @@ def run(self, **kwargs: Any) -> None:
class DocumentTargetTransform(SphinxPostTransform):
"""Add :doc label to the first section of each document."""
default_priority = 400
builders = ('latex',)
formats = ('latex',)

def run(self, **kwargs: Any) -> None:
for node in self.document.traverse(addnodes.start_of_file):
Expand Down Expand Up @@ -599,7 +599,7 @@ class IndexInSectionTitleTransform(SphinxPostTransform):
...
"""
default_priority = 400
builders = ('latex',)
formats = ('latex',)

def run(self, **kwargs: Any) -> None:
for node in self.document.traverse(nodes.title):
Expand Down
17 changes: 15 additions & 2 deletions sphinx/util/parallel.py
Expand Up @@ -103,8 +103,21 @@ def add_task(self, task_func: Callable, arg: Any = None, result_func: Callable =
self._join_one()

def join(self) -> None:
while self._pworking:
self._join_one()
try:
while self._pworking:
self._join_one()
except Exception:
# shutdown other child processes on failure
self.terminate()
raise

def terminate(self) -> None:
for tid in list(self._precvs):
self._procs[tid].terminate()
self._result_funcs.pop(tid)
self._procs.pop(tid)
self._precvs.pop(tid)
self._pworking -= 1

def _join_one(self) -> None:
for tid, pipe in self._precvs.items():
Expand Down

0 comments on commit 3cd1030

Please sign in to comment.