FestinHegre/vendor/symfony/doctrine-bridge/CHANGELOG.md
2024-09-26 17:26:04 +02:00

194 lines
7.9 KiB
Markdown

CHANGELOG
=========
7.1
---
* Allow `EntityValueResolver` to return a list of entities
* Add support for auto-closing idle connections
* Allow validating every class against `UniqueEntity` constraint
* Deprecate auto-mapping of entities in favor of mapped route parameters
7.0
---
* Remove `DoctrineDbalCacheAdapterSchemaSubscriber`, use `DoctrineDbalCacheAdapterSchemaListener` instead
* Remove `MessengerTransportDoctrineSchemaSubscriber`, use `MessengerTransportDoctrineSchemaListener` instead
* Remove `RememberMeTokenProviderDoctrineSchemaSubscriber`, use `RememberMeTokenProviderDoctrineSchemaListener` instead
* Remove `DbalLogger`, use a middleware instead
* Remove `DoctrineDataCollector::addLogger()`, use a `DebugDataHolder` instead
* Remove `ContainerAwareLoader`, use dependency injection in your fixtures instead
* `ContainerAwareEventManager::getListeners()` must be called with an event name
* DoctrineBridge now requires `doctrine/event-manager:^2`
* Add parameter `$isSameDatabase` to `DoctrineTokenProvider::configureSchema()`
6.4
---
* [BC BREAK] Add argument `$buildDir` to `ProxyCacheWarmer::warmUp()`
* [BC BREAK] Add return type-hints to `EntityFactory`
* Deprecate `DbalLogger`, use a middleware instead
* Deprecate not constructing `DoctrineDataCollector` with an instance of `DebugDataHolder`
* Deprecate `DoctrineDataCollector::addLogger()`, use a `DebugDataHolder` instead
* Deprecate `ContainerAwareLoader`, use dependency injection in your fixtures instead
* Always pass the `Request` object to `EntityValueResolver`'s expression
* [BC BREAK] Change argument `$lastUsed` of `DoctrineTokenProvider::updateToken()` to accept `DateTimeInterface`
6.3
---
* Deprecate passing Doctrine subscribers to `ContainerAwareEventManager` class, use listeners instead
* Add `AbstractSchemaListener`, `LockStoreSchemaListener` and `PdoSessionHandlerSchemaListener`
* Deprecate `DoctrineDbalCacheAdapterSchemaSubscriber` in favor of `DoctrineDbalCacheAdapterSchemaListener`
* Deprecate `MessengerTransportDoctrineSchemaSubscriber` in favor of `MessengerTransportDoctrineSchemaListener`
* Deprecate `RememberMeTokenProviderDoctrineSchemaSubscriber` in favor of `RememberMeTokenProviderDoctrineSchemaListener`
* Add optional parameter `$isSameDatabase` to `DoctrineTokenProvider::configureSchema()`
6.2
---
* Add `#[MapEntity]` with its corresponding `EntityValueResolver`
* Add `NAME` constant to `UlidType` and `UuidType`
6.0
---
* Remove `DoctrineTestHelper` and `TestRepositoryFactory`
5.4
---
* Add `DoctrineOpenTransactionLoggerMiddleware` to log when a transaction has been left open
* Deprecate `PdoCacheAdapterDoctrineSchemaSubscriber` and add `DoctrineDbalCacheAdapterSchemaSubscriber` instead
* `UniqueEntity` constraint retrieves a maximum of two entities if the default repository method is used.
* Add support for the newer bundle structure to `AbstractDoctrineExtension::loadMappingInformation()`
* Add argument `$bundleDir` to `AbstractDoctrineExtension::getMappingDriverBundleConfigDefaults()`
* Add argument `$bundleDir` to `AbstractDoctrineExtension::getMappingResourceConfigDirectory()`
5.3
---
* Deprecate `UserLoaderInterface::loadUserByUsername()` in favor of `UserLoaderInterface::loadUserByIdentifier()
* Deprecate `DoctrineTestHelper` and `TestRepositoryFactory`
* [BC BREAK] Remove `UuidV*Generator` classes
* Add `UuidGenerator`
* Add support for the new security-core `TokenVerifierInterface` in `DoctrineTokenProvider`, fixing parallel requests handling in remember-me
5.2.0
-----
* added support for symfony/uid as `UlidType` and `UuidType` as Doctrine types
* added `UlidGenerator`, `UuidV1Generator`, `UuidV4Generator` and `UuidV6Generator`
5.0.0
-----
* the `getMetadataDriverClass()` method is abstract and must be implemented by class extending `AbstractDoctrineExtension`
* passing an `IdReader` to the `DoctrineChoiceLoader` when the query cannot be optimized with single id field, throws an exception; pass `null` instead
* not explicitly passing an instance of `IdReader` to `DoctrineChoiceLoader` when it can optimize single id field, will not apply any optimization
* `DoctrineExtractor` now requires an `EntityManagerInterface` on instantiation
4.4.0
-----
* [BC BREAK] using null as `$classValidatorRegexp` value in `DoctrineLoader::__construct` will not enable auto-mapping for all classes anymore, use `'{.*}'` instead.
* added `DoctrineClearEntityManagerWorkerSubscriber`
* deprecated `RegistryInterface`, use `Doctrine\Persistence\ManagerRegistry`
* added support for invokable event listeners
* added `getMetadataDriverClass` method to deprecate class parameters in service configuration files
4.3.0
-----
* changed guessing of DECIMAL to set the `input` option of `NumberType` to string
* deprecated not passing an `IdReader` to the `DoctrineChoiceLoader` when query can be optimized with a single id field
* deprecated passing an `IdReader` to the `DoctrineChoiceLoader` when entities have a composite id
* added two Messenger middleware: `DoctrinePingConnectionMiddleware` and `DoctrineCloseConnectionMiddleware`
4.2.0
-----
* deprecated injecting `ClassMetadataFactory` in `DoctrineExtractor`,
an instance of `EntityManagerInterface` should be injected instead
* added support for `simple_array` type
* the `DoctrineTransactionMiddlewareFactory` class has been removed
4.1.0
-----
* added support for datetime immutable types in form type guesser
4.0.0
-----
* the first constructor argument of the `DoctrineChoiceLoader` class must be
an `ObjectManager` implementation
* removed the `MergeDoctrineCollectionListener::onBind()` method
* trying to reset a non-lazy manager service using the `ManagerRegistry::resetService()`
method throws an exception
* removed the `DoctrineParserCache` class
3.4.0
-----
* added support for doctrine/dbal v2.6 types
* added cause of UniqueEntity constraint violation
* deprecated `DbalSessionHandler` and `DbalSessionHandlerSchema` in favor of
`Symfony\Component\HttpFoundation\Session\Storage\Handler\PdoSessionHandler`
3.1.0
-----
* added "{{ value }}" message placeholder to UniqueEntityValidator
* deprecated `MergeDoctrineCollectionListener::onBind` in favor of
`MergeDoctrineCollectionListener::onSubmit`
* deprecated passing `ChoiceListFactoryInterface` as first argument of
`DoctrineChoiceLoader`'s constructor
3.0.0
-----
* removed `EntityChoiceList`
* removed `$manager` (2nd) and `$class` (3th) arguments of `ORMQueryBuilderLoader`
* removed passing a query builder closure to `ORMQueryBuilderLoader`
* removed `loader` and `property` options of the `DoctrineType`
2.8.0
-----
* deprecated using the entity provider with a Doctrine repository implementing UserProviderInterface
* added UserLoaderInterface for loading users through Doctrine.
2.7.0
-----
* added DoctrineChoiceLoader
* deprecated EntityChoiceList
* deprecated passing a query builder closure to ORMQueryBuilderLoader
* deprecated $manager and $em arguments of ORMQueryBuilderLoader
* added optional arguments $propertyAccessor and $choiceListFactory to DoctrineOrmExtension constructor
* deprecated "loader" and "property" options of DoctrineType
2.4.0
-----
* deprecated DoctrineOrmTestCase class
2.2.0
-----
* added an optional PropertyAccessorInterface parameter to DoctrineType,
EntityType and EntityChoiceList
2.1.0
-----
* added a default implementation of the ManagerRegistry
* added a session storage for Doctrine DBAL
* DoctrineOrmTypeGuesser now guesses "collection" for array Doctrine type
* DoctrineType now caches its choice lists in order to improve performance
* DoctrineType now uses ManagerRegistry::getManagerForClass() if the option "em" is not set
* UniqueEntity validation constraint now accepts a "repositoryMethod" option that will be used to check for uniqueness instead of the default "findBy"
* [BC BREAK] the DbalLogger::log() visibility has been changed from public to
protected