doctrine/orm breaking changes
Every breaking API change we have recorded in doctrine/orm on Packagist: 2,480 breaking changes in 4 versions. Below are its newest 4 versions, removals and renames first, each with its source.
Newest change February 3, 2024
On this page
3.0.0
- Removed
Drops support for Doctrine DBAL 2 in doctrine/orm 3.0.0 github.com - Removed
Removes support for entity namespace aliases in doctrine/orm 3.0.0 github.com - Removed
Doctrine Cache support is removed from the ORM. github.com - Removed
Removes the TABLE and UUID id generation strategies in doctrine/orm 3.0.0 github.com - Removed
Removes the deprecated named (native) queries in doctrine/orm 3.0.0 github.com - Removed
Removes the ability to merge detached entities in doctrine/orm 3.0.0 github.com - Removed
Removes the Notify change tracking policy in doctrine/orm 3.0.0 github.com - Removed
Removes the doctrine binary in doctrine/orm 3.0.0 github.com - Removed
Annotation
Removes the Annotation interface in doctrine/orm 3.0.0 github.com - Removed
ClassMetadataInfo
Removes ClassMetadataInfo in doctrine/orm 3.0.0 github.com
And 2,411 more in this version.
3.0.0-RC1
- Behavior changed
Field type and enumType mappings are checked against the entity property type, so mismatched mappings may now be reported as errors. github.com - Behavior changed
Mapping a non-backed enum type now raises an exception, so mappings using such enums must be changed to backed enums. github.com
3.0.0-beta2
- Behavior changed
Data serialized in old formats is no longer read; reserialize affected data with the current version. github.com
3.0.0-beta1
- Removed
Bootstrap console tools for standalone use as documented instead. github.com - Removed
All APIs related to named queries have been removed. github.com - Removed
Doctrine\ORM\AbstractQuery::setResultCacheDriver
Result and query cache driver methods were removed from AbstractQuery and Query. packagist.org - Removed
Doctrine\ORM\Cache\MultiGetRegion
Its methods are merged into Region. packagist.org - Removed
Doctrine\ORM\Cache\Persister\Collection\AbstractCollectionPersister::evictCollectionCache
Protected eviction helpers were removed from AbstractCollectionPersister. packagist.org - Removed
Doctrine\ORM\Configuration::addEntityNamespace
EntityManager::getRepository no longer accepts alias notation. packagist.org - Removed
Doctrine\ORM\Configuration::getQueryCacheImpl
Use the PSR-6 counterparts, which drop the Impl suffix. packagist.org - Removed
Doctrine\ORM\EntityManager::merge
EntityManager::merge now throws an exception on every call. packagist.org - Removed
Doctrine\ORM\EntityManagerInterface::getPartialReference
Calls to getPartialReference must be removed from code. packagist.org - Removed
Doctrine\ORM\Event\LifecycleEventArgs
Use the dedicated event argument classes for each lifecycle event. packagist.org
And 46 more in this version.
Check your code
These are the changes. To see which of them reach your code, scan a public repository, or have your coding agent call check_code with your manifest or lockfile over MCP. The API reads every change in every version, not only the newest. A fix pull request opens for the changes that reach a connected repository. Nothing merges or deploys.

Put your code on continuous maintenance.
Scan a public repository now, or give your agent one line.
See how out of date your code is.
Tell your agent what changed since it was trained.
claude mcp add --transport http since https://api.since.dev/mcpCodex, Cursor and any MCP client use https://api.since.dev/mcp.