Skip to content

Commit 5d60fb6

Browse files
authored
Merge pull request #1958 from greg0ire/no-yml
Remove support for YML
2 parents 594addb + 15b8c82 commit 5d60fb6

File tree

11 files changed

+8
-95
lines changed

11 files changed

+8
-95
lines changed

UPGRADE-3.0.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@ More details below
2222
This makes `DisconnectedMetadataFactory` redundant, as it relies on code
2323
available only in `doctrine/orm` 2. It has been removed.
2424

25+
Support for the YML and annotation metadata drivers has been dropped.
26+
2527
Commands
2628
--------
2729

config/orm.php

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
use Doctrine\ORM\Mapping\DefaultTypedFieldMapper;
2323
use Doctrine\ORM\Mapping\Driver\AttributeDriver;
2424
use Doctrine\ORM\Mapping\Driver\SimplifiedXmlDriver;
25-
use Doctrine\ORM\Mapping\Driver\SimplifiedYamlDriver;
2625
use Doctrine\ORM\Mapping\UnderscoreNamingStrategy;
2726
use Doctrine\ORM\Tools\AttachEntityListenersListener;
2827
use Doctrine\ORM\Tools\Console\Command\ClearCache\CollectionRegionCommand;
@@ -67,7 +66,6 @@
6766
// metadata drivers
6867
->set('doctrine.orm.metadata.driver_chain.class', MappingDriverChain::class)
6968
->set('doctrine.orm.metadata.xml.class', SimplifiedXmlDriver::class)
70-
->set('doctrine.orm.metadata.yml.class', SimplifiedYamlDriver::class)
7169
->set('doctrine.orm.metadata.php.class', PHPDriver::class)
7270
->set('doctrine.orm.metadata.staticphp.class', StaticPHPDriver::class)
7371
->set('doctrine.orm.metadata.attribute.class', AttributeDriver::class)

docs/en/configuration.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -738,7 +738,7 @@ configuration for the ORM and there are several configuration options that you
738738
can control. The following configuration options exist for a mapping:
739739

740740
``type``
741-
One of ``attribute``, ``xml``, ``yml``, ``php`` or ``staticphp``.
741+
One of ``attribute``, ``xml``, ``php`` or ``staticphp``.
742742
This specifies which type of metadata type your mapping uses.
743743

744744
``dir``

phpstan.neon.dist

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,6 @@ parameters:
66
- tests
77

88
ignoreErrors:
9-
- message: '#(Annotation|SimplifiedYaml)Driver#'
10-
identifier: class.notFound
119
# phpstan has no array shape intersection support https://github.com/phpstan/phpstan/issues/12414
1210
- message: '#unresolvable type.#'
1311
path: src/DataCollector/DoctrineDataCollector.php

src/DependencyInjection/Compiler/DoctrineOrmMappingsPass.php

Lines changed: 0 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44

55
use Doctrine\ORM\Mapping\Driver\AttributeDriver;
66
use Doctrine\ORM\Mapping\Driver\XmlDriver;
7-
use Doctrine\ORM\Mapping\Driver\YamlDriver;
87
use Doctrine\Persistence\Mapping\Driver\PHPDriver;
98
use Doctrine\Persistence\Mapping\Driver\StaticPHPDriver;
109
use Doctrine\Persistence\Mapping\Driver\SymfonyFileLocator;
@@ -72,28 +71,6 @@ public static function createXmlMappingDriver(array $namespaces, array $managerP
7271
return new DoctrineOrmMappingsPass($driver, $namespaces, $managerParameters, $enabledParameter, $aliasMap);
7372
}
7473

75-
/**
76-
* @param string[] $namespaces Hashmap of directory path to namespace
77-
* @param string[] $managerParameters List of parameters that could which object manager name
78-
* your bundle uses. This compiler pass will automatically
79-
* append the parameter name for the default entity manager
80-
* to this list.
81-
* @param string|false $enabledParameter Service container parameter that must be present to
82-
* enable the mapping. Set to false to not do any check,
83-
* optional.
84-
* @param string[] $aliasMap Map of alias to namespace.
85-
*
86-
* @return self
87-
*/
88-
public static function createYamlMappingDriver(array $namespaces, array $managerParameters = [], $enabledParameter = false, array $aliasMap = [])
89-
{
90-
$locator = new Definition(SymfonyFileLocator::class, [$namespaces, '.orm.yml']);
91-
/* @phpstan-ignore class.notFound */
92-
$driver = new Definition(YamlDriver::class, [$locator]);
93-
94-
return new DoctrineOrmMappingsPass($driver, $namespaces, $managerParameters, $enabledParameter, $aliasMap);
95-
}
96-
9774
/**
9875
* @param string[] $namespaces Hashmap of directory path to namespace
9976
* @param string[] $managerParameters List of parameters that could which object manager name

src/DependencyInjection/DoctrineExtension.php

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424
use Doctrine\ORM\Mapping\Driver\AttributeDriver;
2525
use Doctrine\ORM\Mapping\Driver\PHPDriver as LegacyPHPDriver;
2626
use Doctrine\ORM\Mapping\Driver\SimplifiedXmlDriver;
27-
use Doctrine\ORM\Mapping\Driver\SimplifiedYamlDriver;
2827
use Doctrine\ORM\Mapping\Driver\StaticPHPDriver as LegacyStaticPHPDriver;
2928
use Doctrine\ORM\Mapping\Embeddable;
3029
use Doctrine\ORM\Mapping\Entity;
@@ -840,11 +839,11 @@ protected function loadOrmEntityManager(array $entityManager, ContainerBuilder $
840839
* doctrine.orm:
841840
* mappings:
842841
* MyBundle1: ~
843-
* MyBundle2: yml
842+
* MyBundle2: xml
844843
* MyBundle3: { type: xml, dir: Resources/config/doctrine/mapping }
845844
* MyBundle4: { type: attribute, dir: Entities/ }
846845
* MyBundle5:
847-
* type: yml
846+
* type: xml
848847
* dir: bundle-mappings/
849848
* alias: BundleAlias
850849
* arbitrary_key:
@@ -1154,10 +1153,6 @@ protected function getMetadataDriverClass(string $driverType): string
11541153
case 'xml':
11551154
return SimplifiedXmlDriver::class;
11561155

1157-
case 'yml':
1158-
/* @phpstan-ignore class.notFound */
1159-
return SimplifiedYamlDriver::class;
1160-
11611156
case 'php':
11621157
/* @phpstan-ignore class.notFound */
11631158
return class_exists(PHPDriver::class) ? PHPDriver::class : LegacyPHPDriver::class;

tests/DependencyInjection/AbstractDoctrineExtensionTestCase.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -534,7 +534,7 @@ public function testSingleEntityManagerMultipleMappingBundleDefinitions(): void
534534
self::markTestSkipped('This test requires ORM');
535535
}
536536

537-
$container = $this->loadContainer('orm_single_em_bundle_mappings', ['YamlBundle', 'XmlBundle', 'AttributesBundle']);
537+
$container = $this->loadContainer('orm_single_em_bundle_mappings', ['XmlBundle', 'AttributesBundle']);
538538

539539
$definition = $container->getDefinition('doctrine.orm.default_metadata_driver');
540540

@@ -574,7 +574,7 @@ public function testMultipleEntityManagersMappingBundleDefinitions(): void
574574
self::markTestSkipped('This test requires ORM');
575575
}
576576

577-
$container = $this->loadContainer('orm_multiple_em_bundle_mappings', ['YamlBundle', 'XmlBundle', 'AttributesBundle']);
577+
$container = $this->loadContainer('orm_multiple_em_bundle_mappings', ['XmlBundle', 'AttributesBundle']);
578578

579579
$this->assertEquals(['em1' => 'doctrine.orm.em1_entity_manager', 'em2' => 'doctrine.orm.em2_entity_manager'], $container->getParameter('doctrine.entity_managers'), 'Set of the existing EntityManagers names is incorrect.');
580580
$this->assertEquals('%doctrine.entity_managers%', $container->getDefinition('doctrine')->getArgument(2), 'Set of the existing EntityManagers names is incorrect.');
@@ -611,7 +611,7 @@ public function testSingleEntityManagerDefaultTableOptions(): void
611611
self::markTestSkipped('This test requires ORM');
612612
}
613613

614-
$container = $this->loadContainer('orm_single_em_default_table_options', ['YamlBundle', 'XmlBundle', 'AttributesBundle']);
614+
$container = $this->loadContainer('orm_single_em_default_table_options', ['XmlBundle', 'AttributesBundle']);
615615

616616
$param = $container->getDefinition('doctrine.dbal.default_connection')->getArgument(0);
617617

tests/DependencyInjection/DoctrineExtensionTest.php

Lines changed: 0 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424
use Doctrine\ORM\Events;
2525
use Doctrine\ORM\Mapping\Driver\AttributeDriver;
2626
use Doctrine\ORM\Mapping\Driver\SimplifiedXmlDriver;
27-
use Doctrine\ORM\Mapping\Driver\SimplifiedYamlDriver;
2827
use Doctrine\ORM\Mapping\Embeddable;
2928
use Doctrine\ORM\Mapping\Entity;
3029
use Doctrine\ORM\Mapping\MappedSuperclass;
@@ -407,8 +406,6 @@ public function testDependencyInjectionConfigurationDefaults(): void
407406
$this->assertEquals('Proxies', $container->getParameter('doctrine.orm.proxy_namespace'));
408407
$this->assertEquals(MappingDriverChain::class, $container->getParameter('doctrine.orm.metadata.driver_chain.class'));
409408
$this->assertEquals(SimplifiedXmlDriver::class, $container->getParameter('doctrine.orm.metadata.xml.class'));
410-
/* @phpstan-ignore class.notFound */
411-
$this->assertEquals(SimplifiedYamlDriver::class, $container->getParameter('doctrine.orm.metadata.yml.class'));
412409

413410
// second-level cache
414411
$this->assertEquals(DefaultCacheFactory::class, $container->getParameter('doctrine.orm.second_level_cache.default_cache_factory.class'));
@@ -731,37 +728,6 @@ public function testOverrideDefaultEntityManagerWithAdditionalConfiguration(): v
731728
$this->assertEquals('app', $container->getParameter('doctrine.default_entity_manager'));
732729
}
733730

734-
public function testYamlBundleMappingDetection(): void
735-
{
736-
if (! interface_exists(EntityManagerInterface::class)) {
737-
self::markTestSkipped('This test requires ORM');
738-
}
739-
740-
$container = $this->getContainer(['YamlBundle']);
741-
$extension = new DoctrineExtension();
742-
743-
$config = BundleConfigurationBuilder::createBuilder()
744-
->addBaseConnection()
745-
->addEntityManager([
746-
'default_entity_manager' => 'default',
747-
'entity_managers' => [
748-
'default' => [
749-
'mappings' => [
750-
'YamlBundle' => [],
751-
],
752-
],
753-
],
754-
])
755-
->build();
756-
$extension->load([$config], $container);
757-
758-
$definition = $container->getDefinition('doctrine.orm.default_metadata_driver');
759-
$this->assertDICDefinitionMethodCallOnce($definition, 'addDriver', [
760-
new Reference('doctrine.orm.default_yml_metadata_driver'),
761-
'Fixtures\Bundles\YamlBundle\Entity',
762-
]);
763-
}
764-
765731
public function testXmlBundleMappingDetection(): void
766732
{
767733
if (! interface_exists(EntityManagerInterface::class)) {

tests/DependencyInjection/Fixtures/Bundles/YamlBundle/Entity/Test.php

Lines changed: 0 additions & 9 deletions
This file was deleted.

tests/DependencyInjection/Fixtures/Bundles/YamlBundle/Resources/config/doctrine/Test.orm.yml

Lines changed: 0 additions & 5 deletions
This file was deleted.

0 commit comments

Comments
 (0)