La douzième version de Laravel a été lancée le 24 février 2025. Elle apporte des nouvelles fonctionnalités pour améliorer les performances, renforcer la sécurité et parfaire l'expérience des développeurs.
Cette nouvelle version annonce en même temps la fin des mises à jour de sécurité pour Laravel 10. Il est donc temps de passer le pas et assurer la montée en version de vos applicatifs !
Modifications mineures
Laravel 12 est une version relativement mineure. Elle n'apporte en effet pas de grandes fonctionnalités majeures. Elle est surtout destinée à mettre à jour les dépendances existantes, et propose un nouveau kit de démarrage amélioré, conçu pour simplifier l'authentification et l'intégration front-end.
Là ou la montée en version entre Laravel version 10 à la version 11 intégrait de nombreux breaking changes, la mise à jour de Laravel 11 à 12 est relativement rapide.
Astuce ! Vous pouvez facilement changer de version sur un vieux projet à l'aide de Laravel Shift pour la modique somme de $39 par version majeure et par projet.
Trois Nouveaux kits de démarrage
De nouveau kits de démarrage sont inclus directement avec Laravel 12, prenant en charge React, Vue et Livewire !
Inertia 2, TypeScript, shadcn/ui et Tailwind sont utilisés pour le kit de React & Vue. Tandis que la bibliothèque de composants Flux UI basée sur Tailwind et Laravel Volt est utilisée par Livewire.
De plus, chaque kit, propose une variante d'AuthKit WorkOS offrant :
L'authentification sociale
L'authentification par clé d'accès
La prise en charge du SSO
À savoir que Laravel Breeze et Laravel Jetstream ne recevront plus de mises à jour supplémentaires.
Sous le capot
Ça c'était pour la partie émergée de l'iceberg mais évidemment chaque version majeure de Laravel vient avec son lot d'améliorations plus ou moins cachées. Ritwik Verma nous en montre quelques une dans son article comme l'ajout d'une méthode secureValidate
ajouté à l'objet Request
qui permet d'obliger l'utilisation d'un mot de passe sécrurisé via la rule strong
.
$request->secureValidate([
ou bien ce nouveau débugger qui fait appel à l'IA pour suggérer des chose à corriger
debug($variable)->suggest();
On parle aussi d'amélioration des performances pour celles et ceux qui utilisent les WebSockets, de quelques changements sur les commandes Artisan comme l'ajout de artisan scaffold
qui permet de remplacer le bon vieu artisan make:model -mcr
Enfin, cette courte vidéo montre quelques nouveaux tricks comme la possibilité de faire un ddBody()
(comme son nom l'insique) dans les tests ou comment faire un latestOfMany
dans une relation HasManyThrough
.
Conclusion
Laravel 12 se concentre avant tout sur l’actualisation des dépendances en amont, garantissant ainsi une base de code stable et performante sans bouleversements majeurs.