diff --git a/core/lib/Drupal/Core/DependencyInjection/Compiler/DeprecatedServicePass.php b/core/lib/Drupal/Core/DependencyInjection/Compiler/DeprecatedServicePass.php index 04f8fedbaad8eb372f24d40d31132a6026450e1f..92d1d97a68dd94cf2aeb849dc8638e3b093fb85f 100644 --- a/core/lib/Drupal/Core/DependencyInjection/Compiler/DeprecatedServicePass.php +++ b/core/lib/Drupal/Core/DependencyInjection/Compiler/DeprecatedServicePass.php @@ -19,12 +19,26 @@ public function process(ContainerBuilder $container) { $deprecated_services = []; foreach ($container->getDefinitions() as $service_id => $definition) { if ($definition->isDeprecated()) { - $deprecated_services[$service_id] = $definition->getDeprecationMessage($service_id); + // @todo: remove when Drupal requires Symfony 5. See + // https://www.drupal.org/project/drupal/issues/3197482 + if (method_exists($definition, 'getDeprecation')) { + $deprecated_services[$service_id] = $definition->getDeprecation($service_id)['message']; + } + else { + $deprecated_services[$service_id] = $definition->getDeprecationMessage($service_id); + } } } foreach ($container->getAliases() as $service_id => $definition) { if ($definition->isDeprecated()) { - $deprecated_services[$service_id] = $definition->getDeprecationMessage($service_id); + // @todo: remove when Drupal requires Symfony 5. See + // https://www.drupal.org/project/drupal/issues/3197482 + if (method_exists($definition, 'getDeprecation')) { + $deprecated_services[$service_id] = $definition->getDeprecation($service_id)['message']; + } + else { + $deprecated_services[$service_id] = $definition->getDeprecationMessage($service_id); + } } } $container->setParameter('_deprecated_service_list', $deprecated_services);