diff options
author | Steve Dower <steve.dower@python.org> | 2019-07-01 23:03:53 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-07-01 23:03:53 (GMT) |
commit | e226e83d36dfc7220d836fb7a249ce18e70cb4a6 (patch) | |
tree | ec4de1abf366960dadf2aa1e8e1b4b89458243f9 /Doc/tools/extensions/pyspecific.py | |
parent | 0f4e8132820947d93eccf31b9e526b81c6ffa53d (diff) | |
download | cpython-e226e83d36dfc7220d836fb7a249ce18e70cb4a6.zip cpython-e226e83d36dfc7220d836fb7a249ce18e70cb4a6.tar.gz cpython-e226e83d36dfc7220d836fb7a249ce18e70cb4a6.tar.bz2 |
bpo-37363: Add audit events on startup for the run commands (GH-14524)
Diffstat (limited to 'Doc/tools/extensions/pyspecific.py')
-rw-r--r-- | Doc/tools/extensions/pyspecific.py | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/Doc/tools/extensions/pyspecific.py b/Doc/tools/extensions/pyspecific.py index a6f39b0..8839033 100644 --- a/Doc/tools/extensions/pyspecific.py +++ b/Doc/tools/extensions/pyspecific.py @@ -199,13 +199,18 @@ class AuditEvent(Directive): .format(name, info['args'], new_info['args']) ) - if len(self.arguments) >= 3 and self.arguments[2]: - target = self.arguments[2] - ids = [] - else: - target = "audit_event_{}_{}".format(name, len(info['source'])) - target = re.sub(r'\W', '_', label) - ids = [target] + ids = [] + try: + target = self.arguments[2].strip("\"'") + except (IndexError, TypeError): + target = None + if not target: + target = "audit_event_{}_{}".format( + re.sub(r'\W', '_', name), + len(info['source']), + ) + ids.append(target) + info['source'].append((env.docname, target)) pnode = nodes.paragraph(text, classes=["audit-hook"], ids=ids) @@ -560,7 +565,8 @@ def process_audit_events(app, doctree, fromdocname): row += nodes.entry('', node) node = nodes.paragraph() - for i, (doc, label) in enumerate(audit_event['source'], start=1): + backlinks = enumerate(sorted(set(audit_event['source'])), start=1) + for i, (doc, label) in backlinks: if isinstance(label, str): ref = nodes.reference("", nodes.Text("[{}]".format(i)), internal=True) ref['refuri'] = "{}#{}".format( |