upleb.uk

Public git repos — served from a NIP-34 GRASP relay at git.upleb.uk

summaryrefslogtreecommitdiff
path: root/src/lib/list.rs
diff options
context:
space:
mode:
authorDanConwayDev <DanConwayDev@protonmail.com>2026-02-13 08:10:50 +0000
committerDanConwayDev <DanConwayDev@protonmail.com>2026-02-13 08:10:50 +0000
commit64f1cf4f8e021f52f8e7df75e62f10d32d9fa101 (patch)
treeb47f3cf4e213642ccd281b809dbb990968fb34fc /src/lib/list.rs
parent990ac9fb6d4b2e862614632f1f17a6f671c72f5b (diff)
fix: clear progress reporters on successful completion
Progress reporters were not being cleared after successful operations, leaving progress bars visible in the terminal output. Now they are properly cleared when all operations complete without errors.
Diffstat (limited to 'src/lib/list.rs')
-rw-r--r--src/lib/list.rs7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/lib/list.rs b/src/lib/list.rs
index cb26c19..ce8737c 100644
--- a/src/lib/list.rs
+++ b/src/lib/list.rs
@@ -333,18 +333,23 @@ pub async fn list_from_remotes(
333 .await; 333 .await;
334 334
335 let mut remote_states = HashMap::new(); 335 let mut remote_states = HashMap::new();
336 let mut all_succeeded = true;
336 for result in results { 337 for result in results {
337 match result { 338 match result {
338 Ok((url, state, is_grasp_server)) => { 339 Ok((url, state, is_grasp_server)) => {
339 remote_states.insert(url, (state, is_grasp_server)); 340 remote_states.insert(url, (state, is_grasp_server));
340 } 341 }
341 Err((url, error)) => { 342 Err((url, error)) => {
342 // Errors are already displayed in progress bars 343 all_succeeded = false;
343 let _ = term.write_line(&format!("failed to list from {}: {}", url, error)); 344 let _ = term.write_line(&format!("failed to list from {}: {}", url, error));
344 } 345 }
345 } 346 }
346 } 347 }
347 348
349 if all_succeeded {
350 let _ = progress_reporter.clear();
351 }
352
348 remote_states 353 remote_states
349} 354}
350 355