Skip to content

Commit 7e6165d

Browse files
authored
Merge pull request #601 from doctrine/3.4.x-merge-up-into-3.5.x_JaLYP1S2
Merge release 3.4.2 into 3.5.x
2 parents db42777 + 5a6ac71 commit 7e6165d

9 files changed

+27
-11
lines changed

.github/workflows/coding-standards.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@ on:
1212
jobs:
1313
coding-standards:
1414
name: "Coding Standards"
15-
uses: "doctrine/.github/.github/workflows/coding-standards.yml@7.1.0"
15+
uses: "doctrine/.github/.github/workflows/coding-standards.yml@7.2.2"

.github/workflows/composer-lint.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,4 @@ on:
1717
jobs:
1818
composer-lint:
1919
name: "Composer Lint"
20-
uses: "doctrine/.github/.github/workflows/composer-lint.yml@7.1.0"
20+
uses: "doctrine/.github/.github/workflows/composer-lint.yml@7.2.2"

.github/workflows/continuous-integration.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,15 @@ on:
1212
jobs:
1313
phpunit:
1414
name: "PHPUnit"
15-
uses: "doctrine/.github/.github/workflows/continuous-integration.yml@7.1.0"
15+
uses: "doctrine/.github/.github/workflows/continuous-integration.yml@7.2.2"
1616
with:
1717
php-versions: '["7.2", "7.3", "7.4", "8.0", "8.1", "8.2", "8.3", "8.4"]'
1818
secrets:
1919
CODECOV_TOKEN: "${{ secrets.CODECOV_TOKEN }}"
2020

2121
phpunit-with-dev-deps:
2222
name: "PHPUnit with dev dependencies"
23-
uses: "doctrine/.github/.github/workflows/continuous-integration-symfony-unstable.yml@7.1.0"
23+
uses: "doctrine/.github/.github/workflows/continuous-integration-symfony-unstable.yml@7.2.2"
2424
with:
2525
symfony-version-constraint: "^7"
2626
secrets:

.github/workflows/release-on-milestone-closed.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ on:
88
jobs:
99
release:
1010
name: "Git tag, release & create merge-up PR"
11-
uses: "doctrine/.github/.github/workflows/release-on-milestone-closed.yml@7.1.0"
11+
uses: "doctrine/.github/.github/workflows/release-on-milestone-closed.yml@7.2.2"
1212
secrets:
1313
GIT_AUTHOR_EMAIL: ${{ secrets.GIT_AUTHOR_EMAIL }}
1414
GIT_AUTHOR_NAME: ${{ secrets.GIT_AUTHOR_NAME }}

.github/workflows/static-analysis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@ on:
1212
jobs:
1313
static-analysis:
1414
name: "Static Analysis"
15-
uses: "doctrine/.github/.github/workflows/phpstan.yml@7.1.0"
15+
uses: "doctrine/.github/.github/workflows/phpstan.yml@7.2.2"

composer.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@
3434
"composer/semver": "^3.0",
3535
"doctrine/coding-standard": "^12",
3636
"doctrine/orm": "^2.6 || ^3",
37-
"doctrine/persistence": "^2.0 || ^3",
3837
"phpstan/phpstan": "^1.4 || ^2",
3938
"phpstan/phpstan-deprecation-rules": "^1 || ^2",
4039
"phpstan/phpstan-phpunit": "^1 || ^2",

config/services.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@
148148

149149
<service id="doctrine_migrations.schema_filter_listener" class="Doctrine\Bundle\MigrationsBundle\EventListener\SchemaFilterListener">
150150
<tag name="kernel.event_listener" event="console.command" method="onConsoleCommand" />
151-
<tag name="doctrine.dbal.schema_filter" />
151+
<!-- <tag name="doctrine.dbal.schema_filter" /> This tag is dynamically added for each connection -->
152152
</service>
153153

154154
</services>

src/DependencyInjection/DoctrineMigrationsExtension.php

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,15 @@ public function load(array $configs, ContainerBuilder $container): void
125125
}
126126

127127
$configurationDefinition->addMethodCall('setMetadataStorageConfiguration', [new Reference('doctrine.migrations.storage.table_storage')]);
128+
129+
// Add tag to the filter for each Doctrine connection, so the table is ignored for multiple connections
130+
if ($container->hasParameter('doctrine.connections')) {
131+
/** @var array<string, string> $connections */
132+
$connections = $container->getParameter('doctrine.connections');
133+
foreach (array_keys($connections) as $connection) {
134+
$filterDefinition->addTag('doctrine.dbal.schema_filter', ['connection' => $connection]);
135+
}
136+
}
128137
}
129138

130139
if ($config['em'] !== null && $config['connection'] !== null) {

tests/DependencyInjection/DoctrineMigrationsExtensionTest.php

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -279,6 +279,10 @@ public function testCustomConnection(): void
279279
$di = $container->get('doctrine.migrations.dependency_factory');
280280
self::assertInstanceOf(DependencyFactory::class, $di);
281281
self::assertSame($doctrine->getConnection('custom'), $di->getConnection());
282+
// Check if the multiple connections also added the required tags to the filter
283+
$filterDefinition = $container->findDefinition('doctrine_migrations.schema_filter_listener');
284+
$tags = $filterDefinition->getTag('doctrine.dbal.schema_filter');
285+
self::assertCount(2, $tags);
282286
}
283287

284288
public function testPrefersEntityManagerOverConnection(): void
@@ -466,9 +470,6 @@ private function getContainer(array $config, ?array $dbalConfig = null, ?array $
466470
$bundle = new DoctrineMigrationsBundle();
467471
$bundle->build($container);
468472

469-
$extension = new DoctrineMigrationsExtension();
470-
$extension->load(['doctrine_migrations' => $config], $container);
471-
472473
$extension = new DoctrineExtension();
473474

474475
$doctrineBundleConfigs = $dbalConfig === null ? ['dbal' => ['url' => 'sqlite:///:memory:']] : ['dbal' => $dbalConfig];
@@ -478,8 +479,15 @@ private function getContainer(array $config, ?array $dbalConfig = null, ?array $
478479

479480
$extension->load(['doctrine' => $doctrineBundleConfigs], $container);
480481

482+
$extension = new DoctrineMigrationsExtension();
483+
$extension->load(['doctrine_migrations' => $config], $container);
484+
481485
$container->getDefinition('doctrine.migrations.dependency_factory')->setPublic(true);
482486
$container->getDefinition('doctrine.migrations.configuration')->setPublic(true);
487+
if ($container->hasDefinition('doctrine_migrations.schema_filter_listener')) {
488+
$container->getDefinition('doctrine_migrations.schema_filter_listener')->setPublic(true);
489+
}
490+
483491
$container->addCompilerPass(new CacheCompatibilityPass());
484492

485493
return $container;

0 commit comments

Comments
 (0)