Skip to content

Commit e2dc7b6

Browse files
authored
Load manifests asynchronously (#3872)
* Refactor manifest loading to use new async Process.popen() * Use DelayableAction to ensure deferred actions are managed correctly: DelayableAction represents an action on a target that can be deferred until a more appropriate time. In this case, we use defer to cleanup objects in the case of early return error handling, but we need to delay this action when passing the target for use into an async completion block. * Use delegateQueue to avoid reusing the TSCBasic.Process default queue: The manifest parser uses SourceControl.GitShellHelper synchronously, which would cause a hang if using the default queue for completions.
1 parent 3af7f89 commit e2dc7b6

File tree

1 file changed

+224
-155
lines changed

1 file changed

+224
-155
lines changed

0 commit comments

Comments
 (0)