Skip to content

Commit 72ec8e4

Browse files
committed
Merge branch '7.3' into 7.4
* 7.3: [PropertyInfo] treat mixed[] the same as array when getting types from docblocks treat `mixed[]` the same as `array` when getting types from docblocks install ext-zstd on PHP 8.5 as well [Notifier][Mercure] Add support for Mercure 0.7 [FrameworkBundle] fix merging of enabled locales
2 parents 0af40df + a9085e7 commit 72ec8e4

File tree

5 files changed

+65
-2
lines changed

5 files changed

+65
-2
lines changed

DependencyInjection/FrameworkExtension.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1795,11 +1795,11 @@ private function registerTranslatorConfiguration(array $config, ContainerBuilder
17951795

17961796
foreach ($config['providers'] as $provider) {
17971797
if ($provider['locales']) {
1798-
$locales += $provider['locales'];
1798+
$locales = array_merge($locales, $provider['locales']);
17991799
}
18001800
}
18011801

1802-
$locales = array_unique($locales);
1802+
$locales = array_values(array_unique($locales));
18031803

18041804
$container->getDefinition('console.command.translation_pull')
18051805
->replaceArgument(4, array_merge($transPaths, [$config['default_path']]))
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
<?php
2+
3+
$container->loadFromExtension('framework', [
4+
'annotations' => false,
5+
'http_method_override' => false,
6+
'handle_all_throwables' => true,
7+
'php_errors' => ['log' => true],
8+
'enabled_locales' => ['es'],
9+
'translator' => [
10+
'providers' => [
11+
'foo_provider' => [
12+
'locales' => ['en', 'fr'],
13+
],
14+
'bar_provider' => [
15+
'locales' => ['de', 'pl'],
16+
]
17+
]
18+
],
19+
]);
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<?xml version="1.0" ?>
2+
3+
<container xmlns="http://symfony.com/schema/dic/services"
4+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
5+
xmlns:framework="http://symfony.com/schema/dic/symfony"
6+
xsi:schemaLocation="http://symfony.com/schema/dic/services https://symfony.com/schema/dic/services/services-1.0.xsd
7+
http://symfony.com/schema/dic/symfony https://symfony.com/schema/dic/symfony/symfony-1.0.xsd">
8+
9+
<framework:config secret="s3cr3t" http-method-override="false" handle-all-throwables="true">
10+
<framework:annotations enabled="false" />
11+
<framework:php-errors log="true" />
12+
<framework:enabled-locale>es</framework:enabled-locale>
13+
<framework:translator enabled="true">
14+
<framework:provider name="foo_provider">
15+
<framework:locale>en</framework:locale>
16+
<framework:locale>fr</framework:locale>
17+
</framework:provider>
18+
<framework:provider name="bar_provider">
19+
<framework:locale>de</framework:locale>
20+
<framework:locale>pl</framework:locale>
21+
</framework:provider>
22+
</framework:translator>
23+
</framework:config>
24+
</container>
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
framework:
2+
annotations: false
3+
http_method_override: false
4+
handle_all_throwables: true
5+
enabled_locales: [ 'es' ]
6+
php_errors:
7+
log: true
8+
translator:
9+
providers:
10+
foo_provider:
11+
locales: [ 'en', 'fr' ]
12+
bar_provider:
13+
locales: [ 'de', 'pl' ]

Tests/DependencyInjection/FrameworkExtensionTestCase.php

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1409,6 +1409,13 @@ public function testTranslator()
14091409
$this->assertSame('Fixtures/translations', $options['cache_vary']['scanned_directories'][3]);
14101410
}
14111411

1412+
public function testTranslatorProvidersMergedEnabledLocales()
1413+
{
1414+
$container = $this->createContainerFromFile('translator_providers');
1415+
self::assertSame(['es', 'en', 'fr', 'de', 'pl'], $container->getDefinition('console.command.translation_pull')->getArgument(5));
1416+
self::assertSame(['es', 'en', 'fr', 'de', 'pl'], $container->getDefinition('console.command.translation_push')->getArgument(3));
1417+
}
1418+
14121419
public function testTranslatorMultipleFallbacks()
14131420
{
14141421
$container = $this->createContainerFromFile('translator_fallbacks');

0 commit comments

Comments
 (0)