File tree 1 file changed +6
-1
lines changed 1 file changed +6
-1
lines changed Original file line number Diff line number Diff line change @@ -124,6 +124,7 @@ public function checkPatches(Event $event) {
124
124
}
125
125
126
126
// Remove packages for which the patch set has changed.
127
+ $ promises = array ();
127
128
foreach ($ packages as $ package ) {
128
129
if (!($ package instanceof AliasPackage)) {
129
130
$ package_name = $ package ->getName ();
@@ -135,10 +136,14 @@ public function checkPatches(Event $event) {
135
136
|| ($ has_patches && $ has_applied_patches && $ tmp_patches [$ package_name ] !== $ extra ['patches_applied ' ])) {
136
137
$ uninstallOperation = new UninstallOperation ($ package , 'Removing package so it can be re-installed and re-patched. ' );
137
138
$ this ->io ->write ('<info>Removing package ' . $ package_name . ' so that it can be re-installed and re-patched.</info> ' );
138
- $ installationManager ->uninstall ($ localRepository , $ uninstallOperation );
139
+ $ promises [] = $ installationManager ->uninstall ($ localRepository , $ uninstallOperation );
139
140
}
140
141
}
141
142
}
143
+ $ promises = array_filter ($ promises );
144
+ if ($ promises ) {
145
+ $ this ->composer ->getLoop ()->wait ($ promises );
146
+ }
142
147
}
143
148
// If the Locker isn't available, then we don't need to do this.
144
149
// It's the first time packages have been installed.
You can’t perform that action at this time.
0 commit comments