]> granicus.if.org Git - python/commitdiff
bpo-37504: Fix documentation build with texinfo builder (GH-14606)
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Tue, 10 Sep 2019 14:51:43 +0000 (07:51 -0700)
committerSteve Dower <steve.dower@python.org>
Tue, 10 Sep 2019 14:51:43 +0000 (15:51 +0100)
In the table model used by docutils, the `cols` attribute of `tgroup`
nodes is mandatory, see [1]. It is used in texinfo builder in [2].

[1]: https://www.oasis-open.org/specs/tm9901.htmGH-AEN348
[2]: https://github.com/sphinx-doc/sphinx/blob/v2.1.2/sphinx/writers/texinfo.pyGH-L1129

* Doc: Add texinfo support to the Makefile
(cherry picked from commit c3d679fd398f42a2e489fbe3dab17fac1fb2439c)

Co-authored-by: Dmitry Shachnev <mitya57@users.noreply.github.com>
Doc/Makefile
Doc/tools/extensions/pyspecific.py

index 05eeab9124df63c272050f885a99c43181d6ca91..f589b6e75f6180426ae6e4fca6d28a265473cf41 100644 (file)
@@ -20,7 +20,7 @@ PAPEROPT_letter = -D latex_elements.papersize=letterpaper
 ALLSPHINXOPTS = -b $(BUILDER) -d build/doctrees $(PAPEROPT_$(PAPER)) \
                 $(SPHINXOPTS) $(SPHINXERRORHANDLING) . build/$(BUILDER) $(SOURCES)
 
-.PHONY: help build html htmlhelp latex text changes linkcheck \
+.PHONY: help build html htmlhelp latex text texinfo changes linkcheck \
        suspicious coverage doctest pydoc-topics htmlview clean dist check serve \
        autobuild-dev autobuild-stable venv
 
@@ -33,6 +33,7 @@ help:
        @echo "  htmlhelp   to make HTML files and a HTML help project"
        @echo "  latex      to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
        @echo "  text       to make plain text files"
+       @echo "  texinfo    to make Texinfo file"
        @echo "  epub       to make EPUB files"
        @echo "  changes    to make an overview over all changed/added/deprecated items"
        @echo "  linkcheck  to check all external links for integrity"
@@ -89,6 +90,11 @@ text: BUILDER = text
 text: build
        @echo "Build finished; the text files are in build/text."
 
+texinfo: BUILDER = texinfo
+texinfo: build
+       @echo "Build finished; the python.texi file is in build/texinfo."
+       @echo "Run \`make info' in that directory to run it through makeinfo."
+
 epub: BUILDER = epub
 epub: build
        @echo "Build finished; the epub files are in build/epub."
@@ -183,6 +189,17 @@ dist:
        make epub
        cp -pPR build/epub/Python.epub dist/python-$(DISTVERSION)-docs.epub
 
+       # archive the texinfo build
+       rm -rf build/texinfo
+       make texinfo
+       make info --directory=build/texinfo
+       cp -pPR build/texinfo dist/python-$(DISTVERSION)-docs-texinfo
+       tar -C dist -cf dist/python-$(DISTVERSION)-docs-texinfo.tar python-$(DISTVERSION)-docs-texinfo
+       bzip2 -9 -k dist/python-$(DISTVERSION)-docs-texinfo.tar
+       (cd dist; zip -q -r -9 python-$(DISTVERSION)-docs-texinfo.zip python-$(DISTVERSION)-docs-texinfo)
+       rm -r dist/python-$(DISTVERSION)-docs-texinfo
+       rm dist/python-$(DISTVERSION)-docs-texinfo.tar
+
 check:
        $(PYTHON) tools/rstlint.py -i tools -i $(VENVDIR) -i README.rst
 
index f41077b0761521c723792acc535986b6ccf52c86..82dfc6bb263b01053f70c3266bd8ed4abe2b9caa 100644 (file)
@@ -540,6 +540,7 @@ def process_audit_events(app, doctree, fromdocname):
         nodes.colspec(colwidth=30),
         nodes.colspec(colwidth=55),
         nodes.colspec(colwidth=15),
+        cols=3,
     )
     head = nodes.thead()
     body = nodes.tbody()