From 8f8b0ed06e4d2b011bb8f5c9a5a6f8e28622d376 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Mon, 5 Aug 2024 17:24:54 -0300 Subject: [PATCH] fix: limit spinner update rate to at most 1/10 second --- aider/io.py | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/aider/io.py b/aider/io.py index c581ff79c..edf339c20 100644 --- a/aider/io.py +++ b/aider/io.py @@ -424,15 +424,19 @@ class InputOutput: self.io = io self.text = text self.start_time = time.time() + self.last_update = self.start_time print(f"{self.text} {next(self.io.spinner_chars)}", end="\r", flush=True) def step(self): - elapsed = time.time() - self.start_time - print( - f"{self.text} {next(self.io.spinner_chars)} ({elapsed:.1f}s)", - end="\r", - flush=True, - ) + current_time = time.time() + if current_time - self.last_update >= 0.1: # Only update every 1/10 second + elapsed = current_time - self.start_time + print( + f"{self.text} {next(self.io.spinner_chars)} ({elapsed:.1f}s)", + end="\r", + flush=True, + ) + self.last_update = current_time def end(self): elapsed = time.time() - self.start_time