Skip to content

Commit 8151791

Browse files
meili-bors[bot]94noninorkunas
authored
Merge #266
266: Use meilisearch prefix for services r=norkunas a=94noni # Pull Request ## What does this PR do? - Improves "best practices/coding standard" as the « search » prefix is to generic, lets be specific for this bundle This PR can be merged before #265 (as it will require a major release) TODO: Assert that the container has all services and that deprecations are triggered - https://symfony.com/doc/5.4/bundles/best_practices.html#services - https://symfony.com/doc/5.4/service_container/alias_private.html#deprecating-service-aliases --------- # RFC I found some inconsistency reading the repo: - Commands namespace: `meili:` - Bundle config: `meili_search` - Services: `search` (this PR) Will it be nice to define them as `meilisearch`everywhere? Co-authored-by: Antoine Makdessi <[email protected]> Co-authored-by: Tomas Norkūnas <[email protected]>
2 parents a15009f + 760f1c0 commit 8151791

File tree

9 files changed

+28
-18
lines changed

9 files changed

+28
-18
lines changed

config/services.xml

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,26 +4,35 @@
44
xsi:schemaLocation="http://symfony.com/schema/dic/services https://symfony.com/schema/dic/services/services-1.0.xsd">
55

66
<services>
7-
<defaults autowire="true" autoconfigure="true"/>
7+
<defaults autowire="true" autoconfigure="true" />
88

99
<prototype namespace="Meilisearch\Bundle\Command\" resource="../src/Command" />
1010

11-
<service id="search.search_indexer_subscriber"
11+
<service id="meilisearch.search_indexer_subscriber"
1212
class="Meilisearch\Bundle\EventListener\DoctrineEventSubscriber"
1313
public="true">
14-
<argument type="service" id="search.service"/>
14+
<argument type="service" id="meilisearch.service" />
15+
</service>
16+
<service id="search.search_indexer_subscriber" alias="meilisearch.search_indexer_subscriber">
17+
<deprecated package="meilisearch/search-bundle" version="0.14">The "%alias_id%" service alias is deprecated. Use "meilisearch.search_indexer_subscriber" instead.</deprecated>
1518
</service>
1619

17-
<service id="search.client" class="Meilisearch\Client" public="true" lazy="true">
20+
<service id="meilisearch.client" class="Meilisearch\Client" public="true" lazy="true">
1821
<argument key="$url">%meili_url%</argument>
1922
<argument key="$apiKey">%meili_api_key%</argument>
2023
<argument key="$httpClient" type="service" id="psr18.http_client" on-invalid="ignore" />
2124
<argument key="$clientAgents" type="collection">
2225
<argument>%meili_symfony_version%</argument>
2326
</argument>
2427
</service>
28+
<service id="search.client" alias="meilisearch.client" public="true">
29+
<deprecated package="meilisearch/search-bundle" version="0.14">The "%alias_id%" service alias is deprecated. Use "meilisearch.client" instead.</deprecated>
30+
</service>
2531

26-
<service id="Meilisearch\Client" alias="search.client"/>
27-
<service id="Meilisearch\Bundle\SearchService" alias="search.service"/>
32+
<service id="Meilisearch\Client" alias="meilisearch.client" public="true" />
33+
<service id="search.client" alias="meilisearch.client" public="true">
34+
<deprecated package="meilisearch/search-bundle" version="0.14">The "%alias_id%" service alias is deprecated. Use "meilisearch.client" instead.</deprecated>
35+
</service>
36+
<service id="Meilisearch\Bundle\SearchService" alias="meilisearch.service" />
2837
</services>
2938
</container>

src/DependencyInjection/MeilisearchExtension.php

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,24 +40,25 @@ public function load(array $configs, ContainerBuilder $container): void
4040
$container->setParameter('meili_symfony_version', MeilisearchBundle::qualifiedVersion());
4141

4242
if (\count($doctrineEvents = $config['doctrineSubscribedEvents']) > 0) {
43-
$subscriber = $container->getDefinition('search.search_indexer_subscriber');
43+
$subscriber = $container->getDefinition('meilisearch.search_indexer_subscriber');
4444

4545
foreach ($doctrineEvents as $event) {
4646
$subscriber->addTag('doctrine.event_listener', ['event' => $event]);
4747
$subscriber->addTag('doctrine_mongodb.odm.event_listener', ['event' => $event]);
4848
}
4949
} else {
50-
$container->removeDefinition('search.search_indexer_subscriber');
50+
$container->removeDefinition('meilisearch.search_indexer_subscriber');
5151
}
5252

53-
$engineDefinition = new Definition(Engine::class, [new Reference('search.client')]);
53+
$engineDefinition = new Definition(Engine::class, [new Reference('meilisearch.client')]);
5454

5555
$searchDefinition = (new Definition(
5656
MeilisearchService::class,
5757
[new Reference($config['serializer']), $engineDefinition, $config]
5858
));
5959

60-
$container->setDefinition('search.service', $searchDefinition->setPublic(true));
60+
$container->setDefinition('meilisearch.service', $searchDefinition->setPublic(true));
61+
$container->setAlias('search.service', 'meilisearch.service')->setPublic(true);
6162
}
6263

6364
/**

tests/BaseKernelTestCase.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ protected function setUp(): void
2929
self::bootKernel();
3030

3131
$this->entityManager = $this->get('doctrine.orm.entity_manager');
32-
$this->searchService = $this->get('search.service');
32+
$this->searchService = $this->get('meilisearch.service');
3333

3434
$metaData = $this->entityManager->getMetadataFactory()->getAllMetadata();
3535
$tool = new SchemaTool($this->entityManager);

tests/Integration/CommandsTest.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ protected function setUp(): void
3434
{
3535
parent::setUp();
3636

37-
$this->client = $this->get('search.client');
37+
$this->client = $this->get('meilisearch.client');
3838
$this->index = $this->client->index($this->getPrefix().self::$indexName);
3939
$this->application = new Application(self::createKernel());
4040
}
@@ -498,7 +498,7 @@ public function testImportWithDynamicSettings(string $command): void
498498
EOD, $importOutput);
499499
}
500500

501-
$settings = $this->get('search.client')->index('sf_phpunit__dynamic_settings')->getSettings();
501+
$settings = $this->get('meilisearch.client')->index('sf_phpunit__dynamic_settings')->getSettings();
502502

503503
$getSetting = static fn ($value) => $value instanceof \IteratorAggregate ? iterator_to_array($value) : $value;
504504

tests/Integration/DependencyInjectionTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ public function testHasMeilisearchVersionDefinitionAfterLoad(): void
2121
{
2222
$this->load();
2323

24-
$this->assertContainerBuilderHasServiceDefinitionWithArgument('search.client', '$clientAgents', ['%meili_symfony_version%']);
24+
$this->assertContainerBuilderHasServiceDefinitionWithArgument('meilisearch.client', '$clientAgents', ['%meili_symfony_version%']);
2525
}
2626

2727
public function testHasMeilisearchVersionFromConstantAfterLoad(): void

tests/Integration/EngineTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ public function setUp(): void
1919
{
2020
parent::setUp();
2121

22-
$this->engine = new Engine($this->get('search.client'));
22+
$this->engine = new Engine($this->get('meilisearch.client'));
2323
}
2424

2525
/**

tests/Integration/EventListener/DoctrineEventSubscriberTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ public function setUp(): void
2222
{
2323
parent::setUp();
2424

25-
$this->client = $this->get('search.client');
25+
$this->client = $this->get('meilisearch.client');
2626
}
2727

2828
/**

tests/Integration/SearchTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ protected function setUp(): void
3636
{
3737
parent::setUp();
3838

39-
$this->client = $this->get('search.client');
39+
$this->client = $this->get('meilisearch.client');
4040
$this->objectManager = $this->get('doctrine')->getManager();
4141
$this->index = $this->client->index($this->getPrefix().self::$indexName);
4242
$this->application = new Application(self::createKernel());

tests/Integration/SettingsTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ public function setUp(): void
3737
{
3838
parent::setUp();
3939

40-
$this->client = $this->get('search.client');
40+
$this->client = $this->get('meilisearch.client');
4141
$this->application = new Application(self::$kernel);
4242
}
4343

0 commit comments

Comments
 (0)