diff --git a/aider/coders/editblock_coder.py b/aider/coders/editblock_coder.py index bbc5bcae5..6b5dc79ff 100644 --- a/aider/coders/editblock_coder.py +++ b/aider/coders/editblock_coder.py @@ -36,24 +36,6 @@ class EditBlockCoder(Coder): return edits - def run_interactive_subprocess(self, command): - try: - result = subprocess.run( - command, - text=True, - shell=True, - encoding=self.io.encoding, - errors="replace", - ) - if result.returncode == 0: - return - self.io.tool_error(f"Command '{command}' exited with status {result.returncode}") - except Exception as e: - self.io.tool_error(f"Error running command '{command}': {str(e)}") - - self.io.tool_output(f"To retry and share output with the LLM: /run {command}") - self.io.tool_output("You can find this command in your input history with up-arrow.") - def apply_edits(self, edits): failed = [] passed = [] diff --git a/aider/utils.py b/aider/utils.py index 0ce447d40..f281558e0 100644 --- a/aider/utils.py +++ b/aider/utils.py @@ -16,7 +16,7 @@ IMAGE_EXTENSIONS = {".png", ".jpg", ".jpeg", ".gif", ".bmp", ".tiff", ".webp"} def run_interactive_command(command): try: - import pexpect + import pexpect # noqa: F401 except ImportError: return run_interactive_command_subprocess(command) @@ -391,9 +391,7 @@ if __name__ == "__main__": if len(sys.argv) > 1: command = " ".join(sys.argv[1:]) exit_status, output = run_interactive_command(command) - print("Exit status:") dump(exit_status) - print("\nFull output:") dump(output) else: print("Usage: python -m aider.utils ") diff --git a/requirements/requirements.in b/requirements/requirements.in index 958368375..003f28ec3 100644 --- a/requirements/requirements.in +++ b/requirements/requirements.in @@ -24,6 +24,7 @@ flake8 importlib_resources pyperclip pypager +pexpect # The proper depdendency is networkx[default], but this brings # in matplotlib and a bunch of other deps