function drupal_required_modules in Zircon Profile 8.0
Same name and namespace in other branches
- 8 core/includes/module.inc \drupal_required_modules()
Returns an array of modules required by core.
1 call to drupal_required_modules()
- install_profile_info in core/
includes/ install.inc - Retrieves information about an installation profile from its .info.yml file.
File
- core/
includes/ module.inc, line 146 - API for loading and interacting with Drupal modules.
Code
function drupal_required_modules() {
$listing = new ExtensionDiscovery(\Drupal::root());
$files = $listing
->scan('module');
$required = array();
// Unless called by the installer, an installation profile is required and
// must always be loaded. drupal_get_profile() also returns the installation
// profile in the installer, but only after it has been selected.
if ($profile = drupal_get_profile()) {
$required[] = $profile;
}
foreach ($files as $name => $file) {
$info = \Drupal::service('info_parser')
->parse($file
->getPathname());
if (!empty($info) && !empty($info['required']) && $info['required']) {
$required[] = $name;
}
}
return $required;
}