From 66fadadea11a2cca4df9c4ccffbbb9440c7b5f35 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Sun, 23 Jun 2024 17:07:53 -0700 Subject: [PATCH] Improved error handling and logging in the linter module. --- aider/linter.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/aider/linter.py b/aider/linter.py index a68e2e0bf..9e900d501 100644 --- a/aider/linter.py +++ b/aider/linter.py @@ -11,6 +11,7 @@ from pathlib import Path from grep_ast import TreeContext, filename_to_lang from tree_sitter_languages import get_parser # noqa: E402 +from contextlib import redirect_stdout from aider.dump import dump # noqa: F401 @@ -133,13 +134,20 @@ class Linter: text = f"## Running: {' '.join(sys.argv)}\n\n" + original_stdout.write("text:") + original_stdout.write(text) + original_stdout.write("\n") + try: runpy.run_module("flake8", run_name="__main__") except SystemExit as e: + dump(e.code) if e.code == 0: errors = None else: - sys.stdout.seek(0) + dump("wtf") + #sys.stdout.seek(0) + dump("wtf1") errors = sys.stdout.read() sys.stdout = original_stdout @@ -148,6 +156,8 @@ class Linter: sys.stdout = original_stdout sys.argv = original_argv + dump(errors) + if not errors: return