lighthouse
lighthouse copied to clipboard
Drop support for unsupported Laravel and PHP versions
What problem does this feature proposal attempt to solve?
Dropping support for Laravel Versions prior to Laravel 8 would ease the maintenance burden and allow us to make use of new Laravel features and performance improvements. In the same vein active support for PHP 7.4 will also end this year and, moving to support PHP 8 onward would again ease the burden on what has to be maintained and move the community forward.
As a more radical approach one might even consider to only support Laravel 9 which will also come out this year and will be the next LTS release.
Which possible solutions should be considered?
If you were to go with Laravel 9 only, how much support would you give 5.x of this library? It's kinda rough to say that devs have to move to the latest/greatest Laravel to be able to get bug and security fixes for this library. I know some devs keep older version supported, but I wasn't sure of the core developers' appetite for maintaining two versions.
Of course, but these versions are also unsupported for a reason, plus it helps move the community forward™. Also Laravel 9 is going to be an LTS release which means that it can be supported for a long time and sure, one should not always jump directly to the latest thing out there but I also don't think, supporting older versions indefinitely is right either. As I said, only supporting Laravel 9 is a bold move, but it also might be a good one if done correctly. Autumn is also a few months away yet, so the update would not be just dropped on the users, deprecations and announcements could prepare the users for the switch, 5.x is still being maintained until then and can lay the ground work for the eventual update, if it happens with release or a few months later.
I appreciate the discussion and hearing your opinion on the matter. Keep in mind that I am giving a lot more weight to what actual contributors to the project have to say.
Currently there are no pressing issues that pushes us towards any kind of breakage. The Lighthouse 5.x APIs are holding up just fine. Compatiblity fixes, feature detection and workarounds for older Laravel versions are in place and working fine. Older PHP versions are still working fine.
Neither I nor any other contributor have shown much interest in supporting older versions of Lighthouse. This probably won't change unless someone pays for it.
At some point we will break stuff, and surely raise the minimum supported versions then. As of now, I would probably target PHP 7.4 and Laravel 6.x. Until then, I would rather keep stuff intact and see how far that takes us.
6.x is going to require Laravel 9 and PHP 8.