From: Petr Špaček Date: Fri, 24 Jun 2022 07:55:01 +0000 (+0200) Subject: Warn about experimental and deprecated options X-Git-Tag: v9.19.3~16^2~15 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=7b4ad8a3ff4dc8fb5d5da41e713c9111d620753b;p=thirdparty%2Fbind9.git Warn about experimental and deprecated options --- diff --git a/doc/arm/_ext/iscconf.py b/doc/arm/_ext/iscconf.py index 06f3d6c9f55..f4a74897e77 100644 --- a/doc/arm/_ext/iscconf.py +++ b/doc/arm/_ext/iscconf.py @@ -185,6 +185,23 @@ def domain_factory(domainname, domainlabel, todolist, grammar): grammarnode += nodetype(text=grammar_txt) return grammarnode + def format_warnings(self, flags): + """Return node with a warning box about deprecated and + experimental options""" + warn = nodes.warning() + if "deprecated" in flags: + warn += nodes.paragraph( + text=( + "This option is deprecated and will be removed in a future" + " version of BIND." + ) + ) + if "experimental" in flags: + warn += nodes.paragraph( + text="This option is experimental and subject to change." + ) + return warn + def parse_nested_str(self, instr): """Parse string as nested rst syntax and produce a node""" raw = nodes.paragraph(text=instr) @@ -214,10 +231,19 @@ def domain_factory(domainname, domainlabel, todolist, grammar): grammars = iscconf.statement_grammar_groups[name] multi_grammar = len(grammars) > 1 + union_flags = set() for grammar_grp in grammars: + for one_grammar_dict in grammar_grp: + union_flags = union_flags.union( + set(one_grammar_dict.subgrammar.get("_flags", [])) + ) grammarnode = self.format_grammar(multi_grammar, grammar_grp) contentnode.insert(0, grammarnode) + warn = self.format_warnings(union_flags) + if len(warn): + contentnode.insert(0, warn) + name = domainname label = domainlabel