Doctrine ORM 2 End of Life
Doctrine ORM 2.x erreicht im Februar 2027 das End of Life. ORM 3 ist seit Anfang 2024 die gepflegte Major-Version und das, was aktuelle DoctrineBundle-, API-Platform-4- und Symfony-7.4-Projekte erwarten.
Was ORM 3 entfernt
- Annotation-Mapping.
@ORM\Entityund Co. sind weg; Mapping ist Attributes, XML oder PHP. doctrine/annotations selbst ist verwaist. Das ist der Großteil der Arbeit, und genau das automatisiert Rectors Doctrine-Set. - DBAL 2 und die meisten Legacy-APIs aus DBAL 3. Eigene DBAL-Typen brauchen die neuen Signaturen, die Ergebnisbehandlung von
Statement::execute()hat sich geändert, Platform-Klassen wurden umbenannt. flush($entity),EntityManager::create(),Setup::createAnnotationMetadataConfiguration(), die alte Proxy-Erzeugung und eine Reihe von Lifecycle-Event-Signaturen.- Lazy Ghost Objects ersetzen die alten Proxies (Symfonys VarExporter). Code, der sich auf Proxy-Klassennamen oder
__load()verlassen hat, braucht Aufmerksamkeit.
Warum es mit dem Symfony-Upgrade zusammenfällt
ORM 3 setzt Symfony 7 nicht voraus. Es läuft problemlos auf Symfony 6.4 mit DoctrineBundle 2.11 oder neuer. Aber der Wechsel von Annotations zu Attributes ist derselbe, den Symfony-7-Routing, API Platform 3 und PHPUnit 12 verlangen, also ist es effizient, ihn einmal für alle vier zu machen. Die meisten 5.4- und 6.4-Codebasen machen ihn als zweiten PR ihres Upgrades, direkt nach den Deprecations.
Reihenfolge
- Annotations → Attributes mit Rector, auf der aktuellen ORM-Version. Für sich deploybar.
- DBAL 3 → 4: eigene Typen und rohe SQL-Ergebnisbehandlung korrigieren.
- ORM 2.19 → 3.x: zuerst Deprecations (2.19 loggt sie), dann die Major-Version.
- Migrations-Diff neu erzeugen, um zu bestätigen, dass sich das Schema nicht geändert hat.
Als Festpreis-Add-on kostet das ORM-Upgrade €1.500 bis €3.500, je nach Zahl der Entities, eigenen Typen und rohen DBAL-Aufrufe. Siehe Leistungen und Preise.
Wo steht Ihre Anwendung?
Laden Sie Ihre composer.lock hoch und erhalten Sie in Sekunden Ihren Upgrade-Pfad, die blockierenden Pakete und einen Readiness-Score. Kostenlos, ohne Konto, ohne Quellcode.
Daten geprüft am 2026-09-09 anhand der offiziellen Release-Seiten. Weitere Termine: API Platform 3 End of Life · Symfony 6.4 End of Life · Symfony 5.4 End of Life · alle End-of-Life-Termine. Auch verfügbar auf English Nederlands