doctrine/orm (doctrine/orm)
### [`v3.0.0`](https://togithub.com/doctrine/orm/releases/tag/3.0.0)
[Compare Source](https://togithub.com/doctrine/orm/compare/2.18.0...3.0.0)
##### Release Notes for [3.0.0](https://togithub.com/doctrine/orm/milestone/1)
After almost 8 years of work by many different contributors, we're incredibly proud to announce the release of Doctrine ORM 3.0.0!
#### Upgrade
We've written [an upgrade guide](https://togithub.com/doctrine/orm/blob/3.0.x/UPGRADE.md), but the best way to prepare for the upgrade is to first upgrade to the latest 2.x version, and address any deprecation that is reported.
##### 3.0.0
- Total issues resolved: **9**
- Total pull requests resolved: **241**
- Total contributors: **22**
##### BC Break
- [11165: Allow XML validation to be disabled but keep it enabled by default.](https://togithub.com/doctrine/orm/pull/11165) thanks to [@jwage](https://togithub.com/jwage)
- [11013: Enforce native type declarations](https://togithub.com/doctrine/orm/pull/11013) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10998: Sever ties to common](https://togithub.com/doctrine/orm/pull/10998) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10985: Remove partial syntax in DQL](https://togithub.com/doctrine/orm/pull/10985) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10975: Change EntityPersister return type](https://togithub.com/doctrine/orm/pull/10975) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10969: Use lazy ghosts unconditionally](https://togithub.com/doctrine/orm/pull/10969) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10968: Reject ID collisions in identity map unconditionally](https://togithub.com/doctrine/orm/pull/10968) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10964: Updated order of mapping attribute parameters](https://togithub.com/doctrine/orm/pull/10964) thanks to [@soltmar](https://togithub.com/soltmar)
- [10778: Disallow lifecycle callbacks on embedded classes](https://togithub.com/doctrine/orm/pull/10778) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10777: Turn deprecation into an exception](https://togithub.com/doctrine/orm/pull/10777) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10769: Remove Notify change tracking policy](https://togithub.com/doctrine/orm/pull/10769) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10768: Enable XML validation unconditionally](https://togithub.com/doctrine/orm/pull/10768) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10764: Cleanup bc layers](https://togithub.com/doctrine/orm/pull/10764) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10741: Cleanup bc layers](https://togithub.com/doctrine/orm/pull/10741) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10699: Narrow down parameter types for quote strategies](https://togithub.com/doctrine/orm/pull/10699) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10667: Throw on invalid one to one](https://togithub.com/doctrine/orm/pull/10667) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10520: Turn deprecation from #10470 into an exception in 3.0.x](https://togithub.com/doctrine/orm/pull/10520) thanks to [@mpdude](https://togithub.com/mpdude)
- [10509: Migrate the rest of the source code to PHP 8 syntax](https://togithub.com/doctrine/orm/pull/10509) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10503: Migrate ClassMetadata to PHP 8 syntax](https://togithub.com/doctrine/orm/pull/10503) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10500: Stop relying on underscores to indicate property visibility](https://togithub.com/doctrine/orm/pull/10500) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10497: Migrate more classes to PHP 8 syntax](https://togithub.com/doctrine/orm/pull/10497) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10496: Migrate database driver to PHP 8 syntax](https://togithub.com/doctrine/orm/pull/10496) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10463: Make missing inheritance declaration a failure](https://togithub.com/doctrine/orm/pull/10463) thanks to [@mpdude](https://togithub.com/mpdude)
- [10448: Migrate ParserResult to PHP 8 syntax](https://togithub.com/doctrine/orm/pull/10448) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10414: Remove concrete table inheritance](https://togithub.com/doctrine/orm/pull/10414) thanks to [@mpdude](https://togithub.com/mpdude)
- [10402: Migrate remaining exceptions to PHP 8 syntax](https://togithub.com/doctrine/orm/pull/10402) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10380: Migrate exceptions to PHP 8 syntax](https://togithub.com/doctrine/orm/pull/10380) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10375: Remove deprecated methods and classes](https://togithub.com/doctrine/orm/pull/10375) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10347: Allow Lexer 3](https://togithub.com/doctrine/orm/pull/10347) thanks to [@derrabus](https://togithub.com/derrabus)
- [10346: Modernize QueryExpressionVisitor](https://togithub.com/doctrine/orm/pull/10346) thanks to [@derrabus](https://togithub.com/derrabus)
- [10303: Remove `$entityAnnotationClasses` and `getReader()`](https://togithub.com/doctrine/orm/pull/10303) thanks to [@derrabus](https://togithub.com/derrabus)
- [10272: Remove InExpression](https://togithub.com/doctrine/orm/pull/10272) thanks to [@derrabus](https://togithub.com/derrabus)
- [10196: Add `$lockMode` parameter to `EntityManager::refresh()`](https://togithub.com/doctrine/orm/pull/10196) thanks to [@michnovka](https://togithub.com/michnovka)
- [10192: Remove the Annotation interface](https://togithub.com/doctrine/orm/pull/10192) thanks to [@derrabus](https://togithub.com/derrabus)
- [10175: Remove DriverChain](https://togithub.com/doctrine/orm/pull/10175) thanks to [@derrabus](https://togithub.com/derrabus)
- [10172: Remove EntityManager::create()](https://togithub.com/doctrine/orm/pull/10172) thanks to [@derrabus](https://togithub.com/derrabus)
- [10151: Add native types to annotation classes](https://togithub.com/doctrine/orm/pull/10151) thanks to [@derrabus](https://togithub.com/derrabus)
- [10114: Remove SQL resultset mapping](https://togithub.com/doctrine/orm/pull/10114) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10084: Migrate collections to PHP 8 syntax](https://togithub.com/doctrine/orm/pull/10084) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10053: Add types to PersisterHelper](https://togithub.com/doctrine/orm/pull/10053) thanks to [@derrabus](https://togithub.com/derrabus)
- [10052: Add types to mapping builders](https://togithub.com/doctrine/orm/pull/10052) thanks to [@derrabus](https://togithub.com/derrabus)
- [9976: Add types to EntityListenerResolver](https://togithub.com/doctrine/orm/pull/9976) thanks to [@derrabus](https://togithub.com/derrabus) and [@greg0ire](https://togithub.com/greg0ire)
- [9962: Add types to ProxyFactory](https://togithub.com/doctrine/orm/pull/9962) thanks to [@derrabus](https://togithub.com/derrabus) and [@greg0ire](https://togithub.com/greg0ire)
- [9953: Resolve QueryBuilder deprecations](https://togithub.com/doctrine/orm/pull/9953) thanks to [@derrabus](https://togithub.com/derrabus)
- [9911: Show Expr::countDistinct() and Expr::concat() use variable-length argument lists](https://togithub.com/doctrine/orm/pull/9911) thanks to [@craigfrancis](https://togithub.com/craigfrancis)
- [9909: Show Expr::countDistinct() and Expr::concat() use variable-length argument lists](https://togithub.com/doctrine/orm/pull/9909) thanks to [@craigfrancis](https://togithub.com/craigfrancis)
- [9900: Migrate part of the tools namespace to PHP8 syntax](https://togithub.com/doctrine/orm/pull/9900) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [9852: Migrate Internal namespace to PHP8](https://togithub.com/doctrine/orm/pull/9852) thanks to [@MarcBrillault](https://togithub.com/MarcBrillault) and [@greg0ire](https://togithub.com/greg0ire)
- [9851: Migrate more code to PHP8](https://togithub.com/doctrine/orm/pull/9851) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [9838: Stop allowing identity columns emulation](https://togithub.com/doctrine/orm/pull/9838) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [9828: migrate Tools/Schema\* to php8.0](https://togithub.com/doctrine/orm/pull/9828) thanks to [@MarcBrillault](https://togithub.com/MarcBrillault) and [@greg0ire](https://togithub.com/greg0ire)
- [9798: Made setters parameters mandatory](https://togithub.com/doctrine/orm/pull/9798) thanks to [@derrabus](https://togithub.com/derrabus)
- [9755: Require new argument to joinColumnName()](https://togithub.com/doctrine/orm/pull/9755) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [9741: Make UnderscoreNamingStrategy number-aware only](https://togithub.com/doctrine/orm/pull/9741) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [9713: Remove last references to ClassMetadataInfo](https://togithub.com/doctrine/orm/pull/9713) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [9705: Remove support for Type::canRequireSQLConversion()](https://togithub.com/doctrine/orm/pull/9705) thanks to [@morozov](https://togithub.com/morozov)
- [9665: Drop support for persistence 2](https://togithub.com/doctrine/orm/pull/9665) thanks to [@derrabus](https://togithub.com/derrabus)
- [9662: Remove the doctrine binary](https://togithub.com/doctrine/orm/pull/9662) thanks to [@derrabus](https://togithub.com/derrabus)
- [9640: Remove console helper](https://togithub.com/doctrine/orm/pull/9640) thanks to [@derrabus](https://togithub.com/derrabus)
- [9631: Add native types to reflection property classes](https://togithub.com/doctrine/orm/pull/9631) thanks to [@derrabus](https://togithub.com/derrabus)
- [9614: Remove support for `ObjectManagerAware`](https://togithub.com/doctrine/orm/pull/9614) thanks to [@derrabus](https://togithub.com/derrabus)
- [9597: Remove support for entity namespace aliases](https://togithub.com/doctrine/orm/pull/9597) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [9551: Split TreeWalker and SqlWalker](https://togithub.com/doctrine/orm/pull/9551) thanks to [@derrabus](https://togithub.com/derrabus)
- [9524: Add native types to SQLFilter](https://togithub.com/doctrine/orm/pull/9524) thanks to [@derrabus](https://togithub.com/derrabus)
- [9520: Remove `TreeWalkerChainIterator`](https://togithub.com/doctrine/orm/pull/9520) thanks to [@derrabus](https://togithub.com/derrabus)
- [9515: Add native types to EntityRepository](https://togithub.com/doctrine/orm/pull/9515) thanks to [@derrabus](https://togithub.com/derrabus)
- [9508: Add native types to caches](https://togithub.com/doctrine/orm/pull/9508) thanks to [@derrabus](https://togithub.com/derrabus)
- [9502: Remove `Proxy` marker interface](https://togithub.com/doctrine/orm/pull/9502) thanks to [@derrabus](https://togithub.com/derrabus)
- [9500: Remove quoting methods from ClassMetadata](https://togithub.com/doctrine/orm/pull/9500) thanks to [@derrabus](https://togithub.com/derrabus)
- [9498: Remove various deprecated methods and properties](https://togithub.com/doctrine/orm/pull/9498) thanks to [@derrabus](https://togithub.com/derrabus)
- [9490: Add native types to QueryBuilder](https://togithub.com/doctrine/orm/pull/9490) thanks to [@derrabus](https://togithub.com/derrabus)
- [9488: Remove ability to merge detached entities](https://togithub.com/doctrine/orm/pull/9488) thanks to [@derrabus](https://togithub.com/derrabus)
- [9485: Remove ability to flush the EM partially](https://togithub.com/doctrine/orm/pull/9485) thanks to [@derrabus](https://togithub.com/derrabus)
- [9471: Remove ability to clear the UoW partially](https://togithub.com/doctrine/orm/pull/9471) thanks to [@derrabus](https://togithub.com/derrabus)
- [9469: Add native types to persisters](https://togithub.com/doctrine/orm/pull/9469) thanks to [@derrabus](https://togithub.com/derrabus)
- [9456: Remove support for Doctrine Cache](https://togithub.com/doctrine/orm/pull/9456) thanks to [@derrabus](https://togithub.com/derrabus)
- [9450: Add more native types to entity manager implementations](https://togithub.com/doctrine/orm/pull/9450) thanks to [@derrabus](https://togithub.com/derrabus)
- [9447: Remove deprecated Setup class](https://togithub.com/doctrine/orm/pull/9447) thanks to [@derrabus](https://togithub.com/derrabus)
- [9428: Removing the deprecated Named (Native) Queries in Metadata/EntityRepository](https://togithub.com/doctrine/orm/pull/9428) thanks to [@sir-kain](https://togithub.com/sir-kain)
- [9403: Remove MultiGetRegion and add native types to Region implementations](https://togithub.com/doctrine/orm/pull/9403) thanks to [@derrabus](https://togithub.com/derrabus)
- [9400: Add native types to CacheLogger implementations](https://togithub.com/doctrine/orm/pull/9400) thanks to [@derrabus](https://togithub.com/derrabus)
- [9396: Add native types to EntityHydrator](https://togithub.com/doctrine/orm/pull/9396) thanks to [@derrabus](https://togithub.com/derrabus)
- [9392: Remove old cache accessors and mutators from query classes](https://togithub.com/doctrine/orm/pull/9392) thanks to [@derrabus](https://togithub.com/derrabus)
- [9367: Remove `AbstractIdGenerator::generate()` and add native types to ID generators](https://togithub.com/doctrine/orm/pull/9367) thanks to [@derrabus](https://togithub.com/derrabus)
- [9359: Add native types to console classes](https://togithub.com/doctrine/orm/pull/9359) thanks to [@derrabus](https://togithub.com/derrabus)
- [9358: Remove `Configuration::ensureProductionSettings()`](https://togithub.com/doctrine/orm/pull/9358) thanks to [@derrabus](https://togithub.com/derrabus)
- [9353: Add native types to `AbstractHydrator` and child classes](https://togithub.com/doctrine/orm/pull/9353) thanks to [@derrabus](https://togithub.com/derrabus)
- [9348: Remove support for Doctrine Cache in second level cache](https://togithub.com/doctrine/orm/pull/9348) thanks to [@derrabus](https://togithub.com/derrabus)
- [9308: \[GH-9277\] remove deprecated `PHPDriver`](https://togithub.com/doctrine/orm/pull/9308) thanks to [@beberlei](https://togithub.com/beberlei)
- [9292: Add types to entity manager](https://togithub.com/doctrine/orm/pull/9292) thanks to [@derrabus](https://togithub.com/derrabus)
- [9278: Remove EntityManager::transactional()](https://togithub.com/doctrine/orm/pull/9278) thanks to [@derrabus](https://togithub.com/derrabus)
- [9259: Do not use AbstractPlatform::canEmulateSchemas()](https://togithub.com/doctrine/orm/pull/9259) thanks to [@morozov](https://togithub.com/morozov)
- [9251: Remove `Setup::registerAutoloadDirectory()`](https://togithub.com/doctrine/orm/pull/9251) thanks to [@derrabus](https://togithub.com/derrabus)
- [9227: Remove the `Version` class](https://togithub.com/doctrine/orm/pull/9227) thanks to [@derrabus](https://togithub.com/derrabus)
- [9226: Remove code generators](https://togithub.com/doctrine/orm/pull/9226) thanks to [@derrabus](https://togithub.com/derrabus)
- [9076: Remove AbstractHydrator::hydrateRow()](https://togithub.com/doctrine/orm/pull/9076) thanks to [@derrabus](https://togithub.com/derrabus)
- [9070: Remove `Query::iterate()`](https://togithub.com/doctrine/orm/pull/9070) thanks to [@derrabus](https://togithub.com/derrabus)
- [9045: Remove TABLE and UUID strategies](https://togithub.com/doctrine/orm/pull/9045) thanks to [@derrabus](https://togithub.com/derrabus)
- [8654: Removed EntityManagerInteface::copy()](https://togithub.com/doctrine/orm/pull/8654) thanks to [@smilesrg](https://togithub.com/smilesrg)
- [8319: Fix variadic args in Expr](https://togithub.com/doctrine/orm/pull/8319) thanks to [@simPod](https://togithub.com/simPod)
- [7199: Inherit from homonym exception in parent package](https://togithub.com/doctrine/orm/pull/7199) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [11001: Remove schema visitors](https://togithub.com/doctrine/orm/pull/11001) thanks to [@derrabus](https://togithub.com/derrabus)
- [10612: Extract embedded class mapping into its own DTO](https://togithub.com/doctrine/orm/pull/10612) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10609: Extract discriminator column mapping into its own DTO](https://togithub.com/doctrine/orm/pull/10609) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10607: Field mapping DTO](https://togithub.com/doctrine/orm/pull/10607) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [9329: Add types to `UnitOfWork`](https://togithub.com/doctrine/orm/pull/9329) thanks to [@derrabus](https://togithub.com/derrabus)
- [10556: Add more native types to entity manager](https://togithub.com/doctrine/orm/pull/10556) thanks to [@derrabus](https://togithub.com/derrabus)
- [10243: Migrate persisters to PHP 8 syntax](https://togithub.com/doctrine/orm/pull/10243) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10214: Migrate function nodes to PHP 8 syntax](https://togithub.com/doctrine/orm/pull/10214) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [9978: Add types to `Node::dispatch()`](https://togithub.com/doctrine/orm/pull/9978) thanks to [@derrabus](https://togithub.com/derrabus) and [@greg0ire](https://togithub.com/greg0ire)
- [9923: Add native types to QuoteStrategy classes](https://togithub.com/doctrine/orm/pull/9923) thanks to [@derrabus](https://togithub.com/derrabus)
- [9620: Add native types to ResultSetMapping](https://togithub.com/doctrine/orm/pull/9620) thanks to [@derrabus](https://togithub.com/derrabus)
- [9950: Fix DBAL 4 compatibility](https://togithub.com/doctrine/orm/pull/9950) thanks to [@derrabus](https://togithub.com/derrabus)
- [10379: Remove ClassMetadataInfo](https://togithub.com/doctrine/orm/pull/10379) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10378: Migrate classes with the fewest changes](https://togithub.com/doctrine/orm/pull/10378) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10374: Migrate classes with the fewest changes to PHP 8](https://togithub.com/doctrine/orm/pull/10374) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10309: Drop doctrine/lexer 1](https://togithub.com/doctrine/orm/pull/10309) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10227: Migrate Expr and Lexer to PHP 8 syntax](https://togithub.com/doctrine/orm/pull/10227) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10219: Migrate AST namespace to PHP 8 syntax](https://togithub.com/doctrine/orm/pull/10219) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10177: Purge annotations](https://togithub.com/doctrine/orm/pull/10177) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10113: Migrate to attributes](https://togithub.com/doctrine/orm/pull/10113) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [9835: Migrate Configuration to PHP 8 syntax](https://togithub.com/doctrine/orm/pull/9835) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [9776: Migrate to PHP 8: AbstractQuery and child classes](https://togithub.com/doctrine/orm/pull/9776) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [9085: Refactor ORMException into an interface](https://togithub.com/doctrine/orm/pull/9085) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [9758: Use native type declaration for naming strategies](https://togithub.com/doctrine/orm/pull/9758) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [9462: Remove PHP 7 code](https://togithub.com/doctrine/orm/pull/9462) thanks to [@derrabus](https://togithub.com/derrabus)
##### Improvement
- [11205: Run Rector on the source code](https://togithub.com/doctrine/orm/pull/11205) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [11085: XmlDriver: remove dead code](https://togithub.com/doctrine/orm/pull/11085) thanks to [@staabm](https://togithub.com/staabm)
- [10986: Drop support for unserializing old serialization formats](https://togithub.com/doctrine/orm/pull/10986) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10984: Allow VarExporter 7](https://togithub.com/doctrine/orm/pull/10984) thanks to [@derrabus](https://togithub.com/derrabus)
- [10843: Declare compatibility with DBAL 4](https://togithub.com/doctrine/orm/pull/10843) thanks to [@derrabus](https://togithub.com/derrabus)
- [10805: Validate phpunit.xml against PHPUnit 10 schema](https://togithub.com/doctrine/orm/pull/10805) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10730: Migrate to the object API of Join{Column,Table}Mapping](https://togithub.com/doctrine/orm/pull/10730) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10729: Make the join table name and join column name mandatory](https://togithub.com/doctrine/orm/pull/10729) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10723: Migrate to the object API of AssociationMapping](https://togithub.com/doctrine/orm/pull/10723) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10698: Move joinColumnFieldNames down the class hierarchy](https://togithub.com/doctrine/orm/pull/10698) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10696: Add templating for getOwningSide](https://togithub.com/doctrine/orm/pull/10696) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10688: Introduce method to get to the owning side](https://togithub.com/doctrine/orm/pull/10688) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10682: Make sure unneeded fields are not present](https://togithub.com/doctrine/orm/pull/10682) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10681: Rework association mapping hierarchy](https://togithub.com/doctrine/orm/pull/10681) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10650: Improve named constructors' phpdoc](https://togithub.com/doctrine/orm/pull/10650) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10649: Use valid relationships](https://togithub.com/doctrine/orm/pull/10649) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10646: Migrate basic entity persister to the object API of association mapping](https://togithub.com/doctrine/orm/pull/10646) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10641: Move $(sourceToTarget|targetToSource)KeyColumns down](https://togithub.com/doctrine/orm/pull/10641) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10637: Move properties down](https://togithub.com/doctrine/orm/pull/10637) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10636: Move joinTableColumns down](https://togithub.com/doctrine/orm/pull/10636) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10629: Migrate to embedded class mapping object API](https://togithub.com/doctrine/orm/pull/10629) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10628: Migrate to DiscriminatorColumnMapping's object API](https://togithub.com/doctrine/orm/pull/10628) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10617: Use Rector to migrate to the object API of FieldMapping](https://togithub.com/doctrine/orm/pull/10617) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10613: Extract AssociationMapping in its own DTO](https://togithub.com/doctrine/orm/pull/10613) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10542: Stabilize DBAL version constraint](https://togithub.com/doctrine/orm/pull/10542) thanks to [@derrabus](https://togithub.com/derrabus)
- [10352: Leverage new `ArrayParameterType` constants](https://togithub.com/doctrine/orm/pull/10352) thanks to [@derrabus](https://togithub.com/derrabus)
- [10332: Drop doctrine/lexer 2](https://togithub.com/doctrine/orm/pull/10332) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10326: Cleanup code from PR10313 from 2.14.x](https://togithub.com/doctrine/orm/pull/10326) thanks to [@michnovka](https://togithub.com/michnovka)
- [10323: Migrate Doctrine\ORM\Internal\CommitOrder to PHP 8.1](https://togithub.com/doctrine/orm/pull/10323) thanks to [@derrabus](https://togithub.com/derrabus)
- [10305: Clean-up code after PR10288 merge](https://togithub.com/doctrine/orm/pull/10305) thanks to [@michnovka](https://togithub.com/michnovka)
- [10286: Remove `setAccessible()` calls](https://togithub.com/doctrine/orm/pull/10286) thanks to [@derrabus](https://togithub.com/derrabus)
- [10285: Modernize `Closure::fromCallable()` calls](https://togithub.com/doctrine/orm/pull/10285) thanks to [@derrabus](https://togithub.com/derrabus)
- [10259: Drop support for Symfony 4](https://togithub.com/doctrine/orm/pull/10259) thanks to [@derrabus](https://togithub.com/derrabus)
- [10210: Migrate Cache namespace to php 8](https://togithub.com/doctrine/orm/pull/10210) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10203: Purge annotations from /lib](https://togithub.com/doctrine/orm/pull/10203) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10185: Remove last remnants of the YAML driver](https://togithub.com/doctrine/orm/pull/10185) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10173: Bump DBAL to 3.5 and remove BC hacks](https://togithub.com/doctrine/orm/pull/10173) thanks to [@derrabus](https://togithub.com/derrabus)
- [9968: Stabilize the DBAL dependency](https://togithub.com/doctrine/orm/pull/9968) thanks to [@derrabus](https://togithub.com/derrabus)
- [9957: Drop unmaintained Symfony versions](https://togithub.com/doctrine/orm/pull/9957) thanks to [@derrabus](https://togithub.com/derrabus)
- [9956: Flag properties as readonly if possible](https://togithub.com/doctrine/orm/pull/9956) thanks to [@derrabus](https://togithub.com/derrabus) and [@greg0ire](https://togithub.com/greg0ire)
- [9954: Remove obsolete PHP version checks](https://togithub.com/doctrine/orm/pull/9954) thanks to [@derrabus](https://togithub.com/derrabus)
- [9925: Require PHP 8.1](https://togithub.com/doctrine/orm/pull/9925) thanks to [@derrabus](https://togithub.com/derrabus)
- [9885: Address API removals from upstream](https://togithub.com/doctrine/orm/pull/9885) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [9535: Leverage the `Stringable` interface](https://togithub.com/doctrine/orm/pull/9535) thanks to [@derrabus](https://togithub.com/derrabus)
- [9413: Remove check for `getSQLResultCasing()`](https://togithub.com/doctrine/orm/pull/9413) thanks to [@derrabus](https://togithub.com/derrabus)
- [9293: Enable PHPCS rules for PHP 8.0](https://togithub.com/doctrine/orm/pull/9293) thanks to [@derrabus](https://togithub.com/derrabus)
- [9290: \[RFC\] Drop support for PHP 7.4](https://togithub.com/doctrine/orm/pull/9290) thanks to [@derrabus](https://togithub.com/derrabus)
- [9104: Changed EntityRepository count method $criteria parameter to optional](https://togithub.com/doctrine/orm/pull/9104) thanks to [@soltmar](https://togithub.com/soltmar)
- [9069: Remove support for DBAL 2](https://togithub.com/doctrine/orm/pull/9069) thanks to [@derrabus](https://togithub.com/derrabus)
- [7195: Move orm exception up](https://togithub.com/doctrine/orm/pull/7195) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [7825: Improved support for Mapped Superclasses](https://togithub.com/doctrine/orm/pull/7825) thanks to [@andrews05](https://togithub.com/andrews05)
- [11147: Remove irrelevant PHP version checks](https://togithub.com/doctrine/orm/pull/11147) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10506: Migrate Parser to PHP 8](https://togithub.com/doctrine/orm/pull/10506) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10440: Migrate entity manager to PHP 8 syntax](https://togithub.com/doctrine/orm/pull/10440) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [11045: Dynamically resolve AUTO to SEQUENCE or IDENTITY](https://togithub.com/doctrine/orm/pull/11045) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10635: Introduce and leverage more convenience methods](https://togithub.com/doctrine/orm/pull/10635) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10633: Check only owning relationships](https://togithub.com/doctrine/orm/pull/10633) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [6673: Add support for updatable columns](https://togithub.com/doctrine/orm/issues/6673) thanks to [@lcobucci](https://togithub.com/lcobucci)
- [6671: Add support for insertable columns](https://togithub.com/doctrine/orm/issues/6671) thanks to [@lcobucci](https://togithub.com/lcobucci)
- [9094: Bump required PHP version to 7.4](https://togithub.com/doctrine/orm/pull/9094) thanks to [@derrabus](https://togithub.com/derrabus)
- [9634: Remove deprecated handling of custom ObjectRepository implementations](https://togithub.com/doctrine/orm/pull/9634) thanks to [@derrabus](https://togithub.com/derrabus)
- [9395: Stabilize DBAL dependency](https://togithub.com/doctrine/orm/pull/9395) thanks to [@derrabus](https://togithub.com/derrabus)
- [10102: Address method rename](https://togithub.com/doctrine/orm/pull/10102) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [9829: Address removals of doctrine-dbal](https://togithub.com/doctrine/orm/pull/9829) thanks to [@MarcBrillault](https://togithub.com/MarcBrillault)
- [9815: Address deprecation of supportsForeignKeyConstraints()](https://togithub.com/doctrine/orm/pull/9815) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [9738: Address some deprecations](https://togithub.com/doctrine/orm/pull/9738) thanks to [@greg0ire](https://togithub.com/greg0ire)
##### Bugfixes
- [11071: Remove wrong assertion](https://togithub.com/doctrine/orm/pull/11071) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10995: Fix array parameters with DBAL 4](https://togithub.com/doctrine/orm/pull/10995) thanks to [@derrabus](https://togithub.com/derrabus)
- [10728: Declare options property](https://togithub.com/doctrine/orm/pull/10728) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10354: Fix build for DBAL 4](https://togithub.com/doctrine/orm/pull/10354) thanks to [@derrabus](https://togithub.com/derrabus)
- [9924: Adjust casing of `SQLitePlatform` for DBAL 4](https://togithub.com/doctrine/orm/pull/9924) thanks to [@derrabus](https://togithub.com/derrabus)
- [10634: Remove wrong comparison](https://togithub.com/doctrine/orm/pull/10634) thanks to [@greg0ire](https://togithub.com/greg0ire)
##### Static Analysis
- [11012: Use native return type declarations in Debug class](https://togithub.com/doctrine/orm/pull/11012) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10701: Introduce convenience methods to narrow types](https://togithub.com/doctrine/orm/pull/10701) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10700: fix wrong phpdoc](https://togithub.com/doctrine/orm/pull/10700) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10697: Narrow down ClassMetadata::associationMappings type](https://togithub.com/doctrine/orm/pull/10697) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10687: Make indexBy/orderBy easier to understand for SA](https://togithub.com/doctrine/orm/pull/10687) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10367: Migrate files with the least changes to PHP 8](https://togithub.com/doctrine/orm/pull/10367) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [9974: Update Psalm config](https://togithub.com/doctrine/orm/pull/9974) thanks to [@derrabus](https://togithub.com/derrabus)
- [9778: Precise phpdoc of getRootEntities](https://togithub.com/doctrine/orm/pull/9778) thanks to [@VincentLanglet](https://togithub.com/VincentLanglet)
- [9742: Run static analysis with DBAL 4@dev](https://togithub.com/doctrine/orm/pull/9742) thanks to [@morozov](https://togithub.com/morozov)
- [9613: Document that entity names have to be FQCNs now](https://togithub.com/doctrine/orm/pull/9613) thanks to [@derrabus](https://togithub.com/derrabus)
##### Documentation
- [10954: docs: remove reference to removed yaml configuration option](https://togithub.com/doctrine/orm/pull/10954) thanks to [@dannyvankooten](https://togithub.com/dannyvankooten)
- [10853: Remove outdated comment](https://togithub.com/doctrine/orm/pull/10853) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10782: Remove missed note about deprecated drivers](https://togithub.com/doctrine/orm/pull/10782) thanks to [@andersonamuller](https://togithub.com/andersonamuller)
- [10596: Remove contradictory comment of ORMException](https://togithub.com/doctrine/orm/pull/10596) thanks to [@SenseException](https://togithub.com/SenseException)
- [9963: Flag QueryType as internal](https://togithub.com/doctrine/orm/pull/9963) thanks to [@derrabus](https://togithub.com/derrabus)
- [7073: README.md typo?](https://togithub.com/doctrine/orm/issues/7073) thanks to [@Dadibom](https://togithub.com/Dadibom)
- [10793: Remove remaining references to the `merge()` operation](https://togithub.com/doctrine/orm/pull/10793) thanks to [@mpdude](https://togithub.com/mpdude) and [@beberlei](https://togithub.com/beberlei)
- [7196: Document exception-splitting-related BC-breaks](https://togithub.com/doctrine/orm/pull/7196) thanks to [@greg0ire](https://togithub.com/greg0ire)
##### Test Suite
- [10910: Remove PHPUnit polyfills](https://togithub.com/doctrine/orm/pull/10910) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10644: Become strict about notices and warnings](https://togithub.com/doctrine/orm/pull/10644) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [10631: Remove obsolete `RequiresPhp` attributes](https://togithub.com/doctrine/orm/pull/10631) thanks to [@derrabus](https://togithub.com/derrabus)
- [10567: Forbid PHPUnit annotations](https://togithub.com/doctrine/orm/pull/10567) thanks to [@derrabus](https://togithub.com/derrabus)
- [10559: Convert PHPUnit annotations to attributes](https://togithub.com/doctrine/orm/pull/10559) thanks to [@chr-hertel](https://togithub.com/chr-hertel)
- [10492: PHPUnit 10](https://togithub.com/doctrine/orm/pull/10492) thanks to [@derrabus](https://togithub.com/derrabus)
- [9959: Use intersection types in tests](https://togithub.com/doctrine/orm/pull/9959) thanks to [@derrabus](https://togithub.com/derrabus) and [@greg0ire](https://togithub.com/greg0ire)
- [9869: Fix broken mocks due to removal of `Driver::getSchemaManager()`](https://togithub.com/doctrine/orm/pull/9869) thanks to [@derrabus](https://togithub.com/derrabus)
- [9832: Run test with DBAL 4](https://togithub.com/doctrine/orm/pull/9832) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [9814: Remove MockBuilderCompatibilityTools](https://togithub.com/doctrine/orm/pull/9814) thanks to [@derrabus](https://togithub.com/derrabus)
- [9728: Test MySQL DDL using explicit table options](https://togithub.com/doctrine/orm/pull/9728) thanks to [@morozov](https://togithub.com/morozov)
- [9724: Remove ConnectionMock](https://togithub.com/doctrine/orm/pull/9724) thanks to [@morozov](https://togithub.com/morozov)
- [9722: Remove DriverResultMock](https://togithub.com/doctrine/orm/pull/9722) thanks to [@morozov](https://togithub.com/morozov)
- [9717: Remove ConnectionMock::delete()](https://togithub.com/doctrine/orm/pull/9717) thanks to [@morozov](https://togithub.com/morozov)
- [9716: Remove DatabasePlatformMock](https://togithub.com/doctrine/orm/pull/9716) thanks to [@morozov](https://togithub.com/morozov)
- [9715: Remove some mock classes](https://togithub.com/doctrine/orm/pull/9715) thanks to [@morozov](https://togithub.com/morozov)
- [9709: Remove non-API DriverConnectionMock methods](https://togithub.com/doctrine/orm/pull/9709) thanks to [@morozov](https://togithub.com/morozov)
- [9422: Remove DBAL 2 compatible SQL logging](https://togithub.com/doctrine/orm/pull/9422) thanks to [@derrabus](https://togithub.com/derrabus)
- [9402: Make test types compatible with Doctrine DBAL 4.0.x-dev](https://togithub.com/doctrine/orm/pull/9402) thanks to [@morozov](https://togithub.com/morozov)
- [9291: Replace mocks with middlewares](https://togithub.com/doctrine/orm/pull/9291) thanks to [@derrabus](https://togithub.com/derrabus)
- [9800: Migrate tests to PHP8 syntax](https://togithub.com/doctrine/orm/pull/9800) thanks to [@greg0ire](https://togithub.com/greg0ire)
##### CI
- [9727: Run builds with DBAL 4.0.x-dev](https://togithub.com/doctrine/orm/pull/9727) thanks to [@morozov](https://togithub.com/morozov)
- [11011: Prepare CI for stable DBAL 4](https://togithub.com/doctrine/orm/pull/11011) thanks to [@derrabus](https://togithub.com/derrabus)
- [10971: Restore job with --prefer-lowest](https://togithub.com/doctrine/orm/pull/10971) thanks to [@greg0ire](https://togithub.com/greg0ire)
- [9734: Build with DBAL 4@dev on SQLite](https://togithub.com/doctrine/orm/pull/9734) thanks to [@morozov](https://togithub.com/morozov)
- [9740: Build with DBAL 4@dev on PostgreSQL](https://togithub.com/doctrine/orm/pull/9740) thanks to [@morozov](https://togithub.com/morozov)
- [9735: Build with DBAL 4@dev on MySQL and MariaDB](https://togithub.com/doctrine/orm/pull/9735) thanks to [@morozov](https://togithub.com/morozov)
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR contains the following updates:
^2.18.0
->^3.0.0
Release Notes
doctrine/orm (doctrine/orm)
### [`v3.0.0`](https://togithub.com/doctrine/orm/releases/tag/3.0.0) [Compare Source](https://togithub.com/doctrine/orm/compare/2.18.0...3.0.0) ##### Release Notes for [3.0.0](https://togithub.com/doctrine/orm/milestone/1) After almost 8 years of work by many different contributors, we're incredibly proud to announce the release of Doctrine ORM 3.0.0! #### Upgrade We've written [an upgrade guide](https://togithub.com/doctrine/orm/blob/3.0.x/UPGRADE.md), but the best way to prepare for the upgrade is to first upgrade to the latest 2.x version, and address any deprecation that is reported.Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
Read more about the use of Renovate Bot within
ocramius/*
projects.