MPS issue job004061

TitleManual does not build with Sphinx 1.6
Statusclosed
Priorityessential
Assigned userGareth Rees
OrganizationRavenbrook
DescriptionWith Sphinx 1.6.6:

    $ make html
    sphinx-build -b html -d ./doctrees source ./html
    Running Sphinx v1.6.6
    /opt/local/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sphinx/util/compat.py:40: RemovedInSphinx17Warning: sphinx.util.compat.Directive is deprecated and will be removed in Sphinx 1.7, please use docutils' instead.
      RemovedInSphinx17Warning)

    Extension error:
    Could not import extension extensions.mps (exception: cannot import name 'make_admonition')
AnalysisThe problem seems to be with the line

    from sphinx.util.compat import Directive, make_admonition

in manual/source/extensions/mps/__init__.py. Searchig the Internet quickly, [1] suggests:

    from docutils.parsers.rst.directives.admonitions import BaseAdmonition as make_admonition

but this does not work — the interface is different.
How foundmanual_test
Evidence[1] https://github.com/abakan/ablog/commit/413566341b36d2b855fdebe133e15edcd4542785
Created byGareth Rees
Created on2018-01-27 20:09:20
Last modified byGareth Rees
Last modified on2018-10-24 12:12:40
History2018-01-27 GDR Created.

Fixes

Change Effect Date User Description
195335 closed 2018-10-24 12:12:40 Gareth Rees Backport the fixes for job003675 (Can't build manual with Python 3) and for job004061 (Manual does not build with Sphinx 1.6) to custom CET versions 1.113 and 1.114 so that the infosys robot can build the manuals for these versions using the python3-sphinx package on Ubuntu 16.04.
195334 closed 2018-10-24 12:06:21 Gareth Rees Delete the built manual for version 1.111.
Backport the fixes for job003675 (Can't build manual with Python 3) and for job004061 (Manual does not build with Sphinx 1.6) to version 1.111 so that the infosys robot can build the manual for this version using the python3-sphinx package on Ubuntu 16.04.
195322 closed 2018-10-23 22:21:11 Gareth Rees Backport the fix for job003675 (Can't build manual with Python 3) to version 1.112 and the fix for job004061 (Manual does not build with Sphinx 1.6) to versions 1.112-1.116 so that the infosys robot can build the manuals for these versions using the python3-sphinx package on Ubuntu 16.04.
193550 closed 2018-02-12 16:49:42 Gareth Rees Make MPS Manual Sphinx extensions compatible with recent versions of Sphinx:
1. Don't use the html_use_smartypants directive (smartquotes are on by default now).
2. Don't call make_admonition but inherit from BaseAdmonition instead.
3. Set the title of an admonition via the visit method instead of hacking the title node (which is now non-existent as a result of item 2).