From 922bed3317cb9a63cea034f11bf591eca23e0589 Mon Sep 17 00:00:00 2001 From: Prakhar54-byte Date: Mon, 6 Jul 2026 02:34:46 +0530 Subject: [PATCH] feat(download): add overall progress bar for multi-file downloads Wraps the URL iteration list in _download_files with a tqdm progress bar to display overall completion progress, which complements the existing per-file byte-level progress bars. Closes # --- databusclient/api/download.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/databusclient/api/download.py b/databusclient/api/download.py index 312af45..914666b 100644 --- a/databusclient/api/download.py +++ b/databusclient/api/download.py @@ -541,7 +541,10 @@ def _download_files( validate_checksum: Whether to validate checksums after downloading. checksums: Dictionary mapping URLs to their expected checksums. """ - for url in urls: + # Overall progress bar for multiple files + # We use position=0 so it stays at the top, while individual file progress + # bars (which are not given a position explicitly) will print below it. + for url in tqdm(urls, desc="Overall Progress", unit="file", position=0): expected = None if checksums and isinstance(checksums, dict): expected = checksums.get(url)