diff --git a/core/includes/bootstrap.inc b/core/includes/bootstrap.inc index 207fdda..a113c25 100644 --- a/core/includes/bootstrap.inc +++ b/core/includes/bootstrap.inc @@ -271,7 +271,8 @@ function drupal_get_filename($type, $name, $filename = NULL) { } } // If still unknown, retrieve the file list prepared in state by - // system_rebuild_module_data() and system_rebuild_theme_data(). + // system_rebuild_module_data() and + // ThemeHandlerInterface::rebuildThemeData(). if (!isset($files[$type][$name]) && \Drupal::hasService('state')) { $files[$type] += \Drupal::state()->get('system.' . $type . '.files', array()); } diff --git a/core/includes/theme.maintenance.inc b/core/includes/theme.maintenance.inc index e40498c..ea6ed1d 100644 --- a/core/includes/theme.maintenance.inc +++ b/core/includes/theme.maintenance.inc @@ -63,14 +63,11 @@ function _drupal_maintenance_theme() { } } - // Ensure that system.module is loaded. - if (!function_exists('system_rebuild_theme_data')) { - $module_handler = \Drupal::moduleHandler(); - $module_handler->addModule('system', 'core/modules/system'); - $module_handler->load('system'); - } + $module_handler = \Drupal::moduleHandler(); + $module_handler->addModule('system', 'core/modules/system'); + $module_handler->load('system'); - $themes = list_themes(); + $themes = \Drupal::service('theme_handler')->listInfo(); // If no themes are installed yet, or if the requested custom theme is not // installed, retrieve all available themes. diff --git a/core/includes/update.inc b/core/includes/update.inc index 510dc8c..46ab61b 100644 --- a/core/includes/update.inc +++ b/core/includes/update.inc @@ -44,7 +44,7 @@ function update_check_incompatibility($name, $type = 'module') { // We need to do a full rebuild here to make sure the database reflects any // code changes that were made in the filesystem before the update script // was initiated. - $themes = system_rebuild_theme_data(); + $themes = \Drupal::service('theme_handler')->rebuildThemeData(); $modules = system_rebuild_module_data(); } diff --git a/core/lib/Drupal/Core/Updater/Theme.php b/core/lib/Drupal/Core/Updater/Theme.php index b379325..ea853c8 100644 --- a/core/lib/Drupal/Core/Updater/Theme.php +++ b/core/lib/Drupal/Core/Updater/Theme.php @@ -76,7 +76,7 @@ public static function canUpdate($project_name) { public function postInstall() { // Update the theme info. clearstatcache(); - system_rebuild_theme_data(); + \Drupal::service('theme_handler')->rebuildThemeData(); } /** diff --git a/core/modules/locale/locale.compare.inc b/core/modules/locale/locale.compare.inc index e131d99..efefa3b 100644 --- a/core/modules/locale/locale.compare.inc +++ b/core/modules/locale/locale.compare.inc @@ -126,7 +126,7 @@ function locale_translation_project_list() { 'interface translation server pattern', ); $module_data = _locale_translation_prepare_project_list(system_rebuild_module_data(), 'module'); - $theme_data = _locale_translation_prepare_project_list(system_rebuild_theme_data(), 'theme'); + $theme_data = _locale_translation_prepare_project_list(\Drupal::service('theme_handler')->rebuildThemeData(), 'theme'); $project_info = new ProjectInfo(); $project_info->processInfoList($projects, $module_data, 'module', TRUE, $additional_whitelist); $project_info->processInfoList($projects, $theme_data, 'theme', TRUE, $additional_whitelist); diff --git a/core/modules/system/module.api.php b/core/modules/system/module.api.php index 29a9bf3..ed08c8b 100644 --- a/core/modules/system/module.api.php +++ b/core/modules/system/module.api.php @@ -86,9 +86,9 @@ function hook_module_implements_alter(&$implementations, $hook) { * Alter the information parsed from module and theme .info.yml files * * This hook is invoked in _system_rebuild_module_data() and in - * _system_rebuild_theme_data(). A module may implement this hook in order to - * add to or alter the data generated by reading the .info.yml file with - * \Drupal\Core\Extension\InfoParser. + * ThemeHandlerInterface::rebuildThemeData(). A module may implement this hook + * in order to add to or alter the data generated by reading the .info.yml file + * with \Drupal\Core\Extension\InfoParser. * * @param array $info * The .info.yml file contents, passed by reference so that it can be altered. diff --git a/core/modules/system/src/Tests/Extension/ModuleHandlerTest.php b/core/modules/system/src/Tests/Extension/ModuleHandlerTest.php index 69f5627..5bd32c6 100644 --- a/core/modules/system/src/Tests/Extension/ModuleHandlerTest.php +++ b/core/modules/system/src/Tests/Extension/ModuleHandlerTest.php @@ -235,7 +235,7 @@ public function testModuleStreamWrappers() { */ function testThemeMetaData() { // Generate the list of available themes. - $themes = system_rebuild_theme_data(); + $themes = \Drupal::service('theme_handler')->rebuildThemeData(); // Check that the mtime field exists for the bartik theme. $this->assertTrue(!empty($themes['bartik']->info['mtime']), 'The bartik.info.yml file modification time field is present.'); // Use 0 if mtime isn't present, to avoid an array index notice. diff --git a/core/modules/system/system.module b/core/modules/system/system.module index 0d41bba..8a57f77 100644 --- a/core/modules/system/system.module +++ b/core/modules/system/system.module @@ -737,7 +737,7 @@ function system_check_directory($form_element, FormStateInterface $form_state) { * array is returned. * * @see system_rebuild_module_data() - * @see system_rebuild_theme_data() + * @see ThemeHandlerInterface::rebuildThemeData() */ function system_get_info($type, $name = NULL) { $info = array(); @@ -894,19 +894,6 @@ function system_rebuild_module_data() { } /** - * Rebuild, save, and return data about all currently available themes. - * - * @return \Drupal\Core\Extension\Extension[] - * Array of all available themes and their data. - * - * @deprecated in Drupal 8.x-dev, will be removed before Drupal 8.0. - * Use \Drupal::service('theme_handler')->rebuildThemeData(). - */ -function system_rebuild_theme_data() { - return \Drupal::service('theme_handler')->rebuildThemeData(); -} - -/** * Returns an array of default theme features. */ function _system_default_theme_features() { diff --git a/core/modules/update/src/Tests/UpdateContribTest.php b/core/modules/update/src/Tests/UpdateContribTest.php index 95e2b88..599a686 100644 --- a/core/modules/update/src/Tests/UpdateContribTest.php +++ b/core/modules/update/src/Tests/UpdateContribTest.php @@ -293,7 +293,7 @@ function testUpdateHiddenBaseTheme() { ); \Drupal::config('update_test.settings')->set('system_info', $system_info)->save(); $projects = update_get_projects(); - $theme_data = system_rebuild_theme_data(); + $theme_data = \Drupal::service('theme_handler')->rebuildThemeData(); $project_info = new ProjectInfo(); $project_info->processInfoList($projects, $theme_data, 'theme', TRUE); diff --git a/core/modules/update/src/UpdateManager.php b/core/modules/update/src/UpdateManager.php index 21cfe80..567cc0b 100644 --- a/core/modules/update/src/UpdateManager.php +++ b/core/modules/update/src/UpdateManager.php @@ -123,7 +123,7 @@ public function getProjects() { if (empty($this->projects)) { // Still empty, so we have to rebuild. $module_data = system_rebuild_module_data(); - $theme_data = system_rebuild_theme_data(); + $theme_data = \Drupal::service('theme_handler')->rebuildThemeData(); $project_info = new ProjectInfo(); $project_info->processInfoList($this->projects, $module_data, 'module', TRUE); $project_info->processInfoList($this->projects, $theme_data, 'theme', TRUE);