Skip to content

Add ability to cancel runtime downloads#453

Merged
MattKiazyk merged 3 commits intomainfrom
matt/cancelRuntimeDownload
Dec 3, 2023
Merged

Add ability to cancel runtime downloads#453
MattKiazyk merged 3 commits intomainfrom
matt/cancelRuntimeDownload

Conversation

@MattKiazyk
Copy link
Contributor

When downloading runtimes, they sometimes can take a long time. This adds the ability to cancel a runtime as it's downloading.

This keeps the continuation of moving away from Combine into Swift Concurrency by using AsyncThrowingStream. Which the progress streams back as it downloads. This is a new one for me and things seem to be working. I could only get it to work by wrapping the process code around a Task INSIDE the return AsyncThrowingStream<Progress, Error> { continuation in.

I did add a TODO around progress warning. I believe ProgressWrapper combines the latest which stops me from just passing a new Progress back

Cancel on Info Confirm cancel
Screenshot 2023-12-02 at 9 31 56 AM Screenshot 2023-12-02 at 9 32 01 AM

@MattKiazyk MattKiazyk added the enhancement New feature or request label Dec 2, 2023
@MattKiazyk MattKiazyk merged commit 0d631e6 into main Dec 3, 2023
@MattKiazyk MattKiazyk deleted the matt/cancelRuntimeDownload branch December 3, 2023 04:32
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