From fd43cd401d12fb42d1db8b4c064a0de4756e7911 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Mon, 5 Aug 2024 19:33:57 -0300 Subject: [PATCH] feat: Use the Spinner instead of the inlined custom spinner --- aider/utils.py | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/aider/utils.py b/aider/utils.py index 283c87f1f..9de40be52 100644 --- a/aider/utils.py +++ b/aider/utils.py @@ -207,9 +207,7 @@ def run_install(cmd): bufsize=1, universal_newlines=True, ) - spinner = itertools.cycle(["⠋", "⠙", "⠹", "⠸", "⠼", "⠴", "⠦", "⠧", "⠇", "⠏"]) - last_update = time.time() - update_interval = 0.2 # 5 times per second + spinner = Spinner("Installing...") while True: char = process.stdout.read(1) @@ -217,17 +215,14 @@ def run_install(cmd): break output.append(char) + spinner.step() - current_time = time.time() - if current_time - last_update >= update_interval: - print(f" Installing... {next(spinner)}", end="\r", flush=True) - last_update = current_time - + spinner.end() return_code = process.wait() output = "".join(output) if return_code == 0: - print("\rInstallation complete.") + print("Installation complete.") print() return True, output