diff -u b/core/modules/system/system.install b/core/modules/system/system.install --- b/core/modules/system/system.install +++ b/core/modules/system/system.install @@ -435,6 +435,15 @@ if ($phase == 'update') { $profile = drupal_get_profile(); $files = system_rebuild_module_data(); + // Build dependencies based on non-system_info_alter-ed info files + // if we are fired before the alter could even run. + if (drupal_get_bootstrap_phase() < DRUPAL_BOOTSTRAP_CODE) { + foreach ($files as $record) { + $record->info = $record->parsed_info; + } + $files = _module_build_dependencies($files); + } + foreach ($files as $module => $file) { // Ignore disabled modules and install profiles. if (!$file->status || $module == $profile) {