Skip to content

Commit c6b47c6

Browse files
committed
feat: concurrent mirror probing, download progress, and active version protection
- Replace serial mirror latency probing with concurrent probing using Zig 0.16 Io.Group fibers. Direct connections probe all mirrors in parallel (batch size 8), reducing total probe time from sum of all latencies to the slowest single probe. Proxy/curl path remains sequential since std.process.run blocks the event loop. - Add download progress indicator showing percentage, downloaded/total size, and transfer speed. Uses chunked stream loop with ~10 updates per second. Clears line with ANSI escape to prevent ghost characters from shorter previous updates. Curl proxy path uses -# flag for native progress bar. - Block removal of the currently active version with actionable guidance: list other installed versions for switching, or suggest installing a new version first when none are available.
1 parent 8e4aa48 commit c6b47c6

4 files changed

Lines changed: 335 additions & 48 deletions

File tree

0 commit comments

Comments
 (0)