MCPcopy
hub / github.com/Aider-AI/aider / lint

Method lint

aider/linter.py:82–116  ·  view source on GitHub ↗
(self, fname, cmd=None)

Source from the content-addressed store, hash-verified

80 return LintResult(text=errors, lines=linenums)
81
82 def lint(self, fname, cmd=None):
83 rel_fname = self.get_rel_fname(fname)
84 try:
85 code = Path(fname).read_text(encoding=self.encoding, errors="replace")
86 except OSError as err:
87 print(f"Unable to read {fname}: {err}")
88 return
89
90 if cmd:
91 cmd = cmd.strip()
92 if not cmd:
93 lang = filename_to_lang(fname)
94 if not lang:
95 return
96 if self.all_lint_cmd:
97 cmd = self.all_lint_cmd
98 else:
99 cmd = self.languages.get(lang)
100
101 if callable(cmd):
102 lintres = cmd(fname, rel_fname, code)
103 elif cmd:
104 lintres = self.run_cmd(cmd, rel_fname, code)
105 else:
106 lintres = basic_lint(rel_fname, code)
107
108 if not lintres:
109 return
110
111 res = "# Fix any errors below, if possible.\n\n"
112 res += lintres.text
113 res += "\n"
114 res += tree_context(rel_fname, code, lintres.lines)
115
116 return res
117
118 def py_lint(self, fname, rel_fname, code):
119 basic_res = basic_lint(rel_fname, code)

Callers 3

mainFunction · 0.95
cmd_lintMethod · 0.80
lint_editedMethod · 0.80

Calls 5

get_rel_fnameMethod · 0.95
run_cmdMethod · 0.95
basic_lintFunction · 0.85
tree_contextFunction · 0.85
read_textMethod · 0.45

Tested by

no test coverage detected