simplesurance / symfony-compat
Compatibility layer for legacy symfony versions and newer PHP versions
Requires
- php: ^7.3
- doctrine/orm: 2.4.*
- knplabs/gaufrette: <0.6
- zendframework/zend-code: 2.6.*
This package is auto-updated.
Last update: 2021-10-20 15:12:50 UTC
README
The purpose of this package is to provide compatibility for legacy symfony applications (2.x) to be able to run in PHP 7.3 and higher.
Patched alternative classes are provided and effectively replace the broken ones by using a
combination of a autoload.files
and autoload.exclude-from-classmap
composer directives.
The biggest obstacle for us while upgrading to PHP 7.3 was the BC break using continue
in
switch
statements and that's mostly what this repository aims to patch, see
https://www.php.net/manual/en/migration73.incompatible.php#migration73.incompatible.core.continue-targeting-switch
At the moment, this is not suitable for reusability in other applications as the dependencies are deeply tied to the specific needs of our legacy monolithic application, but feel free to use it as inspiration if you find it useful regardless.
The following packages are dependencies and are custom patched by this repository:
- doctrine/orm
- knplabs/gaufrette
- symfony/intl
- zendframework/zend-code
└── src
├── doctrine
│ └── orm
│ └── UnitOfWork.php
├── knplabs
│ └── gaufrette
│ └── Path.php
├── symfony
│ └── intl
│ └── Locale.php
└── zendframework
└── zend-code
├── FileGenerator.php
└── MethodReflection.php