diff --git a/docs/sphinx_exts/sphinx_paramlinks/sphinx_paramlinks.py b/docs/sphinx_exts/sphinx_paramlinks/sphinx_paramlinks.py index 751c171ef..f6c9c5fec 100644 --- a/docs/sphinx_exts/sphinx_paramlinks/sphinx_paramlinks.py +++ b/docs/sphinx_exts/sphinx_paramlinks/sphinx_paramlinks.py @@ -14,6 +14,12 @@ from sphinx import __version__ from sphinx.domains import ObjType from sphinx.util import logging +try: + from sphinx.domains.python import ObjectEntry +except: + from collections import namedtuple + ObjectEntry = namedtuple('ObjectEntry', ['docname', 'node_id', 'objtype']) + PythonDomain.object_types['parameter'] = ObjType('parameter', 'param') if 'getLogger' in dir(logging): @@ -258,7 +264,7 @@ def build_index(app, doctree): for entry in doc_entries: sing, desc, ref, extra = entry[:4] if LooseVersion(__version__) >= LooseVersion('3.0.0'): - app.env.domains['py'].data['objects'][ref] = (docname, ref, 'parameter') + app.env.domains['py'].data['objects'][ref] = ObjectEntry(docname, ref, 'parameter') else: app.env.domains['py'].data['objects'][ref] = (docname, 'parameter')