Skip to content

Commit 13dd680

Browse files
Merge branch '4.4'
* 4.4: Re-allow to use "tagged" in service definitions [HttpFoundation] Allow to not pass a parameter to Request::isMethodSafe() Add missing lock connection string in FrameworkExtension [DomCrawler] normalizeWhitespace should be true by default [DoctrineBridge] Auto-validation must work if no regex are passed Allows URL DSN in Lock and Cache
2 parents 288752a + 1b54a4b commit 13dd680

File tree

2 files changed

+13
-38
lines changed

2 files changed

+13
-38
lines changed

DependencyInjection/FrameworkExtension.php

Lines changed: 5 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@
2727
use Symfony\Bundle\FullStack;
2828
use Symfony\Component\Asset\PackageInterface;
2929
use Symfony\Component\BrowserKit\AbstractBrowser;
30-
use Symfony\Component\Cache\Adapter\AbstractAdapter;
3130
use Symfony\Component\Cache\Adapter\AdapterInterface;
3231
use Symfony\Component\Cache\Adapter\ArrayAdapter;
3332
use Symfony\Component\Cache\Adapter\ChainAdapter;
@@ -73,7 +72,6 @@
7372
use Symfony\Component\Lock\LockFactory;
7473
use Symfony\Component\Lock\LockInterface;
7574
use Symfony\Component\Lock\PersistingStoreInterface;
76-
use Symfony\Component\Lock\Store\FlockStore;
7775
use Symfony\Component\Lock\Store\StoreFactory;
7876
use Symfony\Component\Mailer\Bridge\Amazon\Transport\SesTransportFactory;
7977
use Symfony\Component\Mailer\Bridge\Google\Transport\GmailTransportFactory;
@@ -1487,42 +1485,13 @@ private function registerLockConfiguration(array $config, ContainerBuilder $cont
14871485
$storeDefinitions = [];
14881486
foreach ($resourceStores as $storeDsn) {
14891487
$storeDsn = $container->resolveEnvPlaceholders($storeDsn, null, $usedEnvs);
1490-
switch (true) {
1491-
case 'flock' === $storeDsn:
1492-
$storeDefinition = new Reference('lock.store.flock');
1493-
break;
1494-
case 0 === strpos($storeDsn, 'flock://'):
1495-
$flockPath = substr($storeDsn, 8);
1496-
1497-
$storeDefinitionId = '.lock.flock.store.'.$container->hash($storeDsn);
1498-
$container->register($storeDefinitionId, FlockStore::class)->addArgument($flockPath);
1499-
1500-
$storeDefinition = new Reference($storeDefinitionId);
1501-
break;
1502-
case 'semaphore' === $storeDsn:
1503-
$storeDefinition = new Reference('lock.store.semaphore');
1504-
break;
1505-
case $usedEnvs || preg_match('#^[a-z]++://#', $storeDsn):
1506-
if (!$container->hasDefinition($connectionDefinitionId = '.lock_connection.'.$container->hash($storeDsn))) {
1507-
$connectionDefinition = new Definition(\stdClass::class);
1508-
$connectionDefinition->setPublic(false);
1509-
$connectionDefinition->setFactory([AbstractAdapter::class, 'createConnection']);
1510-
$connectionDefinition->setArguments([$storeDsn, ['lazy' => true]]);
1511-
$container->setDefinition($connectionDefinitionId, $connectionDefinition);
1512-
}
1513-
1514-
$storeDefinition = new Definition(PersistingStoreInterface::class);
1515-
$storeDefinition->setPublic(false);
1516-
$storeDefinition->setFactory([StoreFactory::class, 'createStore']);
1517-
$storeDefinition->setArguments([new Reference($connectionDefinitionId)]);
1488+
$storeDefinition = new Definition(PersistingStoreInterface::class);
1489+
$storeDefinition->setFactory([StoreFactory::class, 'createStore']);
1490+
$storeDefinition->setArguments([$storeDsn]);
15181491

1519-
$container->setDefinition($storeDefinitionId = '.lock.'.$resourceName.'.store.'.$container->hash($storeDsn), $storeDefinition);
1492+
$container->setDefinition($storeDefinitionId = '.lock.'.$resourceName.'.store.'.$container->hash($storeDsn), $storeDefinition);
15201493

1521-
$storeDefinition = new Reference($storeDefinitionId);
1522-
break;
1523-
default:
1524-
throw new InvalidArgumentException(sprintf('Lock store DSN "%s" is not valid in resource "%s"', $storeDsn, $resourceName));
1525-
}
1494+
$storeDefinition = new Reference($storeDefinitionId);
15261495

15271496
$storeDefinitions[] = $storeDefinition;
15281497
}

Resources/config/lock.xml

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,16 +7,22 @@
77
<services>
88
<defaults public="false" />
99

10-
<service id="lock.store.flock" class="Symfony\Component\Lock\Store\FlockStore" />
10+
<service id="lock.store.flock" class="Symfony\Component\Lock\Store\FlockStore">
11+
<deprecated>The "%service_id%" service is deprecated since Symfony 4.4 and will be removed in 5.0.</deprecated>
12+
</service>
1113

12-
<service id="lock.store.semaphore" class="Symfony\Component\Lock\Store\SemaphoreStore" />
14+
<service id="lock.store.semaphore" class="Symfony\Component\Lock\Store\SemaphoreStore">
15+
<deprecated>The "%service_id%" service is deprecated since Symfony 4.4 and will be removed in 5.0.</deprecated>
16+
</service>
1317

1418
<service id="lock.store.memcached.abstract" class="Symfony\Component\Lock\Store\MemcachedStore" abstract="true">
1519
<argument /> <!-- Memcached connection service -->
20+
<deprecated>The "%service_id%" service is deprecated since Symfony 4.4 and will be removed in 5.0.</deprecated>
1621
</service>
1722

1823
<service id="lock.store.redis.abstract" class="Symfony\Component\Lock\Store\RedisStore" abstract="true">
1924
<argument /> <!-- Redis connection service -->
25+
<deprecated>The "%service_id%" service is deprecated since Symfony 4.4 and will be removed in 5.0.</deprecated>
2026
</service>
2127

2228
<service id="lock.store.combined.abstract" class="Symfony\Component\Lock\Store\CombinedStore" abstract="true">

0 commit comments

Comments
 (0)