Skip to content

Commit 3d9a017

Browse files
committed
Ignore the extra directives and roles
1 parent 856ee58 commit 3d9a017

1 file changed

Lines changed: 13 additions & 3 deletions

File tree

flake8_rst_docstrings.py

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@ def tokenize_open(filename):
198198
}
199199

200200

201-
def code_mapping(level, msg, default=99):
201+
def code_mapping(level, msg, extra_directives, extra_roles, default=99):
202202
"""Return an error code between 0 and 99."""
203203
try:
204204
return code_mappings_by_level[level][msg]
@@ -212,6 +212,11 @@ def code_mapping(level, msg, default=99):
212212
# ---> 'Unknown interpreted text role'
213213
if msg.count('"') == 2 and ' "' in msg and msg.endswith('".'):
214214
txt = msg[: msg.index(' "')]
215+
value = msg.split('"', 2)[1]
216+
if txt == "Unknown directive type" and value in extra_directives:
217+
return 0
218+
if txt == "Unknown interpreted text role" and value in extra_roles:
219+
return 0
215220
return code_mappings_by_level[level].get(txt, default)
216221
return default
217222

@@ -1069,8 +1074,13 @@ def run(self):
10691074
#
10701075
# Map the string to a unique code:
10711076
msg = rst_error.message.split("\n", 1)[0]
1072-
code = code_mapping(rst_error.level, msg)
1073-
assert code < 100, code
1077+
code = code_mapping(
1078+
rst_error.level, msg, self.extra_directives, self.extra_roles
1079+
)
1080+
if not code:
1081+
# We ignored it, e.g. a known Sphinx role
1082+
continue
1083+
assert 0 < code < 100, code
10741084
code += 100 * rst_error.level
10751085
msg = "%s%03i %s" % (rst_prefix, code, msg)
10761086

0 commit comments

Comments
 (0)