- if ($info && $info->requires) {
- $sorter->add($key, $info->requires);
- $todoKeys = array_merge($todoKeys, $info->requires);
+ // Add dependencies
+ if ($info) {
+ // Filter out missing dependencies; missing modules cannot be upgraded
+ $requires = array_intersect($info->requires ?? [], $keys);
+ $sorter->add($key, $requires);