You are here

public function UpdateRegistry::getPendingUpdateFunctions in Drupal 8

Same name and namespace in other branches
  1. 9 core/lib/Drupal/Core/Update/UpdateRegistry.php \Drupal\Core\Update\UpdateRegistry::getPendingUpdateFunctions()
  2. 10 core/lib/Drupal/Core/Update/UpdateRegistry.php \Drupal\Core\Update\UpdateRegistry::getPendingUpdateFunctions()

Find all update functions that haven't been executed.

Return value

callable[] A list of update functions.

1 call to UpdateRegistry::getPendingUpdateFunctions()
UpdateRegistry::getPendingUpdateInformation in core/lib/Drupal/Core/Update/UpdateRegistry.php
Returns a list of all the pending updates.

File

core/lib/Drupal/Core/Update/UpdateRegistry.php, line 142

Class

UpdateRegistry
Provides all and missing update implementations.

Namespace

Drupal\Core\Update

Code

public function getPendingUpdateFunctions() {

  // We need a) the list of active modules (we get that from the config
  // bootstrap factory) and b) the path to the modules, we use the extension
  // discovery for that.
  $this
    ->scanExtensionsAndLoadUpdateFiles();

  // First figure out which hook_{$this->updateType}_NAME got executed
  // already.
  $existing_update_functions = $this->keyValue
    ->get('existing_updates', []);
  $available_update_functions = $this
    ->getAvailableUpdateFunctions();
  $not_executed_update_functions = array_diff($available_update_functions, $existing_update_functions);
  return $not_executed_update_functions;
}