You are here

public function ProjectCollector::collectCoreDeprecatedAndObsoleteExtensions in Upgrade Status 8.3

Collect core modules that are installed and obsolete or deprecated.

Return value

array An associated array of extension names keyed by extension machine names.

File

src/ProjectCollector.php, line 344

Class

ProjectCollector
Collects projects and their associated metadata collated for Upgrade Status.

Namespace

Drupal\upgrade_status

Code

public function collectCoreDeprecatedAndObsoleteExtensions() {
  $deprecated_or_obsolete = [];
  $modules = $this->moduleExtensionList
    ->getList();
  $themes = $this->themeExtensionList
    ->getList();
  $profiles = $this->profileExtensionList
    ->getList();
  $extensions = array_merge($modules, $themes, $profiles);
  unset($modules, $themes, $profiles);

  /** @var \Drupal\Core\Extension\Extension $extension */
  foreach ($extensions as $key => $extension) {
    if ($extension->origin === 'core' && !empty($extension->info['lifecycle']) && in_array($extension->info['lifecycle'], [
      'deprecated',
      'obsolete',
    ])) {
      $deprecated_or_obsolete[$key] = $extension->info['name'];
    }
  }
  return $deprecated_or_obsolete;
}