Unverified Commit 802719a5 authored by Alex Pott's avatar Alex Pott
Browse files

Issue #3100496 by amateescu, Donnyboypony, alexpott, Berdir, daffie,...

Issue #3100496 by amateescu, Donnyboypony, alexpott, Berdir, daffie, PapaGrande: Workspaces should only alter non-deprecated path_alias services
parent 88bdfdda
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -136,6 +136,9 @@ public function alter(ContainerBuilder $container) {
    foreach ($services as $id => $class) {
      if (!$container->hasDefinition($id)) {
        $definition = $container->register($id, $class);
        // Mark the fallback services as deprecated in order to allow other
        // modules to provide additional checks before relying or altering them.
        $definition->setDeprecated(TRUE, 'The "%service_id%" service is in fallback mode. See https://drupal.org/node/3092086');
        switch ($id) {
          case 'path_alias.subscriber':
            $definition->addArgument(new Reference('path.alias_manager'));
+8 −3
Original line number Diff line number Diff line
@@ -22,9 +22,14 @@ public function alter(ContainerBuilder $container) {
    $container->setParameter('renderer.config', $renderer_config);

    // Replace the class of the 'path_alias.repository' service.
    $container->getDefinition('path_alias.repository')
    if ($container->hasDefinition('path_alias.repository')) {
      $definition = $container->getDefinition('path_alias.repository');
      if (!$definition->isDeprecated()) {
        $definition
          ->setClass(WorkspacesAliasRepository::class)
          ->addMethodCall('setWorkspacesManager', [new Reference('workspaces.manager')]);
      }
    }

    // Ensure that there's no active workspace while running database updates by
    // removing the relevant tag from all workspace negotiator services.