Skip to content

Show download progress for large native nupkgs - #10

Merged
kzu merged 1 commit into
mainfrom
dev/progress
Aug 25, 2026
Merged

Show download progress for large native nupkgs#10
kzu merged 1 commit into
mainfrom
dev/progress

Conversation

@kzu

@kzu kzu commented Aug 25, 2026

Copy link
Copy Markdown
Member

Summary

Large native hops (for example azx on linux-*, 200+ MB) previously sat silent while the nupkg copied into the cache.

When the console is not redirected, HTTP nupkg downloads now render live progress on stderr:

  • Known total — byte bar from catalog leaf packageSize, else Content-Length
  • Unknown total — spinner plus downloading
  • Redirected console — no progress UI
  • Catalog/size lookup is fail-open and never skips the download

Test plan

  • DownloadProgressTests cover bar vs spinner frames
  • PackageFeedTests drive the shipped TryDownloadAsync path: known size, unknown size, redirected/off, catalog 404 still downloads
  • dotnet test src/Tests/Tests.csproj --nologo twice (173 passed)

When the console is not redirected, HTTP nupkg copies render a byte bar
from catalog packageSize or Content-Length. If no total is known, show a
spinner plus downloading. Catalog lookup is fail-open and never skips the
download. Progress is written to stderr so the child tool still owns stdout.
@kzu kzu added the enhancement New feature or request label Aug 25, 2026
@kzu
kzu merged commit 098e01c into main Aug 25, 2026
3 checks passed
@kzu
kzu deleted the dev/progress branch August 25, 2026 05:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant