Repository navigation
Fixes an update relaunch hang when an app delegate returns .terminateLater and replies asynchronously from a Task or the main queue.
- Requests termination from the main run loop only when the main queue is free, including when another queued callback opens a modal loop.
- Adds regression coverage for nested modal loops and asynchronous termination replies.
Caller behavior: installAndRelaunch() now returns before the app quits, so code after await installAndRelaunch() can run. Complete application quiescing before calling it.
Thanks to @kageroumado for the fix.
Changes: #30
Full Changelog: 4.2.1...4.2.2