Say hello to Laravel 9!

Je leest het goed, Laraval 9 is er! 🚀
Sinds Laravel 8 brengt het Laravel team elk jaar een nieuwe release uit, in plaats van halfjaarlijks. Volgens de planning was de release van Laravel 9 normaal in September 2021 voorzien, maar werd uitgesteld om helemaal future proof op Symfony te kunnen draaien.
Dat is ineens ook één van de voornaamste bestaansreden van deze release: een naadloze integratie met de upstream Symfony 6.0 componenten.

LTS (Long Term Support)
Laravel 9 is een release met Long Term Support. De Laravel maintainers verbinden zich ertoe om de core software van het framework gedurende een langere tijd bij te werken, te patchen en te onderhouden. Op Laravel Versions kan je een handig overzicht bekijken. Zo zal deze versie tot begin 2025 kunnen genieten van security fixes. Daarna zal er ongetwijfeld een nieuwe LTS versie klaarstaan.
Als developers voelen we vaak de drang om te kiezen voor het nieuwste van het nieuwste, maar dat is niet altijd op de vereisten van de klant geënt. We polsen naar jouw ambities op lange termijn om de juiste software voor jouw case te implementeren. Dankzij deze nieuwe versie kunnen we het vraagstuk om te starten met de nieuwste, top notch Laravel, of deze met LTS, eventjes naast ons neerleggen.
Applicaties die nog op Laravel 6 draaien, krijgen slechts ondersteuning tot uiterlijk zomer 2022.
Laten we samen bespreken hoe we jouw applicatie terug een langetermijnvisie kunnen geven.
Hoe upgraden naar Laravel 9
Zoals altijd is het upgrade path heel goed gedocumenteerd. Als je geen verouderde code gebruikt en ook geen van Laravel's eigen code overschrijft dan zou deze update erg vlot moeten verlopen.
Wat vooral belangrijk is, is de minimum PHP vereiste van 8.0.2. PHP 7.4 zal eind november 2022 EOL zijn, dus dit is zeker geen luxe bij het starten van een nieuw project. Check best wel even of je server stack mee kan.
Jouw huidige applicatie kan echter wel specifieke implementaties hebben die de knowhow van experten vereist. We gebruiken naast geautomatiseerde tools, zoals Laravel Shift, onze kennis en ervaring met Laravel sinds versie 4 om de upgrade zo naadloos mogelijk te laten lopen.
Development changes in Laravel
Hoewel we de ambitie hebben om even goede documentatie te schrijven als de makers en maintainers van Laravel, verwijzen we in de eerste plaats toch door naar de Laravel documentatie voor een volledige lijst met nieuwe features.
Wat er bij ons is blijven hangen:
- Swiftmailer ruimt plaats voor Symfony Mailer, een volledig herwerkte, gemoderniseerde package die mee helpt om mails op een veilige manier bij de bestemmeling te brengen.
- Flysystem, de achterliggende package die het bestandsbeheer regelt, wordt van 1.x ineens geupgrade naar 3.x. Dit is een stevige upgrade, maar zorgt voor meer stabiliteit, features en consistentie.
- Enums, in de PHP-wereld sinds versie 8.1, vinden ook hun plaats binnen Laravel: bij Eloquent models kan er attribute casting voorzien worden en ook de route binding kan hier op een handige manier mee om.
- Scout, dat instaat voor zoekfunctionaliteiten, kan nu ook rechtstreeks de databank gebruiken als achterliggende engine. Ideaal voor de kleinere projecten, of in het begin van het ontwikkelen, wanneer er soms nog een beperkte stack en data zijn.
- Naast de verdere implementatie van native types zijn er nog een aantal dingen waar de neatfreaks onder ons wel heel erg blij van worden, zoals bijvoorbeeld de Collections IDE support en misschien ook een nieuwe Query Builder Interface.