@@ -233,25 +233,27 @@ def run_check(self, ast_model, filename, source=None): # type: ignore
233233 return result
234234
235235 def get_code_description (self , version : Version , issue : Any ) -> Optional [CodeDescription ]:
236+ if hasattr (issue , "docs_url" ): # since robocop 6.13
237+ return CodeDescription (issue .docs_url )
236238 if version < (3 , 0 ):
237239 return None
238240
239241 version_letter = "v" if version .major >= 6 else ""
242+ base = f"https://robocop.dev/{ version_letter } { version .major } .{ version .minor } .{ version .patch } "
240243
241- base = f"https://robocop.readthedocs.io/en/{ version_letter } { version .major } .{ version .minor } .{ version .patch } "
242-
243- if version < (4 , 0 ):
244- return CodeDescription (href = f"{ base } /rules.html#{ issue .name } " .lower ())
245-
246- if version < (4 , 1 ):
247- return CodeDescription (href = f"{ base } /rules.html#{ issue .name } -{ issue .severity .value } { issue .rule_id } " .lower ())
248-
249- if version < (4 , 1 , 1 ):
244+ if version >= (6 , 0 ):
245+ # https://robocop.dev/v6.0.0/rules/rules_list.html#doc01-missing-doc-keyword
246+ return CodeDescription (href = f"{ base } /rules/rules_list.html#{ issue .rule .rule_id } -{ issue .rule .name } " .lower ())
247+ if version >= (4 , 1 , 1 ):
248+ # https://robocop.dev/4.1.1/rules_list.html#missing-doc-keyword
249+ return CodeDescription (href = f"{ base } /rules_list.html#{ issue .name } " .lower ())
250+ if version >= (4 , 1 ):
251+ # https://robocop.dev/4.1.0/rules_list.html#missing-doc-keyword-w0201
250252 return CodeDescription (
251253 href = f"{ base } /rules_list.html#{ issue .name } -{ issue .severity .value } { issue .rule_id } " .lower ()
252254 )
253-
254- if version < ( 6 , 0 ):
255- return CodeDescription (href = f"{ base } /rules_list .html#{ issue .name } " .lower ())
256-
257- return CodeDescription (href = f"{ base } /rules/rules_list .html#{ issue . rule . rule_id } - { issue . rule .name } " .lower ())
255+ if version >= ( 4 , 0 ):
256+ # https://robocop.dev/4.0.0/rules.html#missing-doc-keyword-w0201
257+ return CodeDescription (href = f"{ base } /rules .html#{ issue .name } - { issue . severity . value } { issue . rule_id } " .lower ())
258+ # https://robocop.dev/3.1.0/rules.html#missing-doc-keyword
259+ return CodeDescription (href = f"{ base } /rules.html#{ issue .name } " .lower ())
0 commit comments