diff --git a/CHANGES b/CHANGES index 0641958fa3..96a6152d05 100644 --- a/CHANGES +++ b/CHANGES @@ -1,4 +1,8 @@ +2.5-beta-114 | 2016-10-27 09:00:24 -0700 + + * Fix for Sphinx >= 1.4 compability. (Robin Sommer) + 2.5-beta-113 | 2016-10-27 07:44:25 -0700 * XMPP: Fix detection of StartTLS when using namespaces. (Johanna diff --git a/VERSION b/VERSION index 73304c9c72..7375177fa9 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -2.5-beta-113 +2.5-beta-114 diff --git a/doc/ext/bro.py b/doc/ext/bro.py index 1df4a518c2..c78615813f 100644 --- a/doc/ext/bro.py +++ b/doc/ext/bro.py @@ -14,6 +14,7 @@ from sphinx.locale import l_, _ from sphinx.directives import ObjectDescription from sphinx.roles import XRefRole from sphinx.util.nodes import make_refnode +from sphinx import version_info import string from docutils import nodes @@ -32,6 +33,14 @@ class SeeDirective(Directive): n.refs = string.split(string.join(self.content)) return [n] +# Wrapper for creating a tuple for index nodes, staying backwards +# compatible to Sphinx < 1.4: +def make_index_tuple(indextype, indexentry, targetname, targetname2): + if version_info >= (1, 4, 0, '', 0): + return (indextype, indexentry, targetname, targetname2, None) + else: + return (indextype, indexentry, targetname, targetname2) + def process_see_nodes(app, doctree, fromdocname): for node in doctree.traverse(see): content = [] @@ -95,8 +104,9 @@ class BroGeneric(ObjectDescription): indextext = self.get_index_text(self.objtype, name) if indextext: - self.indexnode['entries'].append(('single', indextext, - targetname, targetname)) + self.indexnode['entries'].append(make_index_tuple('single', + indextext, targetname, + targetname)) def get_index_text(self, objectname, name): return _('%s (%s)') % (name, self.objtype) @@ -120,9 +130,9 @@ class BroNamespace(BroGeneric): self.update_type_map(name) indextext = self.get_index_text(self.objtype, name) - self.indexnode['entries'].append(('single', indextext, + self.indexnode['entries'].append(make_index_tuple('single', indextext, targetname, targetname)) - self.indexnode['entries'].append(('single', + self.indexnode['entries'].append(make_index_tuple('single', "namespaces; %s" % (sig), targetname, targetname)) @@ -148,7 +158,7 @@ class BroEnum(BroGeneric): self.update_type_map(name) indextext = self.get_index_text(self.objtype, name) - #self.indexnode['entries'].append(('single', indextext, + #self.indexnode['entries'].append(make_index_tuple('single', indextext, # targetname, targetname)) m = sig.split() @@ -162,7 +172,7 @@ class BroEnum(BroGeneric): self.env.domaindata['bro']['notices'] = [] self.env.domaindata['bro']['notices'].append( (m[0], self.env.docname, targetname)) - self.indexnode['entries'].append(('single', + self.indexnode['entries'].append(make_index_tuple('single', "%s (enum values); %s" % (m[1], m[0]), targetname, targetname))