Skip to content

v5.9.6

Choose a tag to compare

@github-actions github-actions released this 31 Aug 07:12
· 13 commits to master since this release

Highlights

A download now always reports how it ended.

πŸ› Fixes

  • A download could finish without ever raising DownloadFileCompleted. StartDownload ended in one of four branches, and the last one β€” an "unexpected" terminal state β€” only logged a warning and returned. For anything driven by the events (rather than only awaiting the task) that meant the download never ended: no error, no file, nothing to retry, and a UI left showing it as still in progress. That branch now always sends a completion signal.
  • Pausing exactly as the last bytes arrive no longer throws the download away. A Pause() that lands after every byte has been received leaves the status Paused with nothing left to do β€” a finished download. It is now reported as Completed instead of falling into the unexpected-state branch and being discarded.
  • Any other unexpected terminal state is reported as Failed with an IncompleteDownloadException naming the state and the byte counts, so the cause is visible instead of silent.

πŸ”§ Under the hood

  • New integration tests (CompletionSignalTest) cover all three terminal paths β€” completed, cancelled, and paused-at-the-finish-line. The last one fails against 5.9.5.

Found while tracing a download manager whose row stayed "downloading" forever against a server that refused its requests (Downloader.Desktop #9).

What's Changed

Full Changelog: v5.9.5...v5.9.6