Repository navigation
6.4.0
First release of the datasage fork. Modernises the dependency surface and adds PHP 8.5 support.
Supported PHP: 8.2 – 8.5. PHP 8.1 is dropped.
Cache: laminas-cache → PSR-6
doctrine.cache.*services now resolve toPsr\Cache\CacheItemPoolInterfaceinstead of the abandonedDoctrine\Common\Cache\Cache.- Pre-configured pools are provided by
symfony/cache.psr/cacheis accepted at^1.0 || ^2.0 || ^3.0, since only the interface is consumed. Cache\LaminasStorageCacheandCache\DoctrineCacheStorageare removed, along with the top-levelcachesconfiguration. The filesystem cache directory moves todoctrine.cache.filesystem.directory.- Any PSR-6 implementation can be plugged in: an
instanceservice that already implementsCacheItemPoolInterfaceis used as-is.
Annotations removed
doctrine/annotationsis dropped. Mapping must be declared with PHP attributes.Options\Driver::getCache()is removed.setCache()remains as a deprecated no-op so existing driver configuration keeps loading.
Dependencies
Removed: doctrine/cache, doctrine/annotations, laminas/laminas-cache (+ storage adapters), composer/semver, composer-runtime-api.
Moved to suggest: laminas/laminas-mvc and doctrine/doctrine-laminas-hydrator. Neither was used by src/, and both blocked PHP 8.5 — laminas-mvc has no 8.5 release on any branch, and the hydrator's only 8.5-capable version would have forced every consumer onto ORM 3.
Widened:
| Package | Was | Now |
|---|---|---|
doctrine/collections |
^2.0 |
^2.0 || ^3.0 |
doctrine/persistence |
^3.0 |
^3.0 || ^4.0 |
psr/container |
^1.1 |
^1.1 || ^2.0 |
symfony/console |
^6.2 || ^7.0 |
^6.2 || ^7.0 || ^8.0 |
laminas/laminas-servicemanager |
^3.17 |
^3.17 || ^4.0 |
laminas/laminas-validator |
^2.25 |
^2.25 || ^3.0 |
laminas/laminas-paginator |
^2.13 |
^2.13 || ^3.0 |
doctrine/orm 2.20 remains resolvable on PHP 8.5, so no ORM 2 → 3 migration is forced.
CLI
bin/doctrine-module no longer requires laminas-mvc. It still boots a full MVC application when laminas-mvc is installed — preserving module onBootstrap() listeners — and wires the module manager directly otherwise.
Upgrading
- Consumers reading
doctrine.cache.*as aDoctrine\Common\Cache\Cachemust move to the PSR-6 API. - Anything overriding the
cachesconfig must move todoctrine.cache.*. DoctrineORMModuleandDoctrineMongoODMModuleneed matching releases; the conflict bounds require6.4.0and5.4.0respectively.
Verified by resolving and running the suite inside real PHP 8.2, 8.3, 8.4 and 8.5 containers, plus --prefer-lowest on 8.2.