Nous trouver

Nous suivre

Laravel 11 : les nouveautés et quand migrer votre application

Laravel 11 est sorti le 12 mars 2024 : structure d'application allégée, serveur WebSocket Reverb, route de santé, PHP 8.2 minimum. Tour d'horizon des nouveautés et de la bonne stratégie de migration pour une application métier.

par Jérémie Elbaz, Développeur Fullstack Développement & IA

Laravel 11 : les nouveautés et quand migrer votre application
Photo : Chris Ried sur Unsplash

Il y a une semaine, le 12 mars 2024, l'équipe Laravel publiait Laravel 11. Chez NiceCorp, Laravel est le framework PHP sur lequel nous développons la plupart des logiciels métier et applications web de nos clients. Cette version apporte des changements visibles dès la création d'un projet, et quelques nouveautés très utiles en production. Voici ce qu'il faut retenir des nouveautés de Laravel 11, en tant que développeur comme en tant que dirigeant qui possède une application Laravel.

Quelles sont les principales nouveautés de Laravel 11 ?

Les notes de version officielles listent les changements suivants.

Une structure d'application allégée

C'est le changement le plus visible. Un nouveau projet Laravel 11 contient beaucoup moins de fichiers :

  • un seul fournisseur de services, AppServiceProvider, au lieu de cinq ;
  • plus de classes « kernel » HTTP et console : le routage, les middlewares et la gestion des exceptions se configurent dans un fichier unique, bootstrap/app.php ;
  • les fichiers de routes API et de broadcasting ne sont plus créés par défaut : on les ajoute uniquement si besoin.

Pour un nouveau projet, c'est plus lisible. Pour un développeur qui reprend l'application, il y a moins de fichiers « de plomberie » à parcourir.

Laravel Reverb : le temps réel intégré

Reverb est un serveur WebSocket développé par l'équipe Laravel. Il permet d'ajouter des fonctions temps réel (notifications instantanées, tableaux de bord qui se mettent à jour seuls, messagerie interne) sans dépendre d'un service tiers. Il peut monter en charge horizontalement grâce à Redis.

Pour un logiciel métier, c'est intéressant : un planning partagé ou un suivi de commandes peut se rafraîchir automatiquement chez tous les utilisateurs connectés.

Une route de santé /up

Les nouvelles applications exposent une route /up qui indique si l'application répond. Elle sert aux outils de surveillance et aux orchestrateurs de conteneurs. Un petit ajout, mais qui simplifie la supervision.

Les autres nouveautés utiles

Nouveauté Intérêt concret
Limitation de débit à la seconde Protéger plus finement une API ou un formulaire
Rotation des clés de chiffrement (APP_PREVIOUS_KEYS) Changer la clé sans déconnecter tous les utilisateurs
Helper once() Mettre en cache le résultat d'un calcul pendant une requête
Casts de modèle déclarés dans une méthode Code plus lisible et plus flexible
Validation dans Laravel Prompts Commandes Artisan interactives plus robustes
Pilote MariaDB dédié Meilleure prise en charge de MariaDB
SQLite par défaut pour les nouveaux projets Démarrage plus rapide en développement
Tests des interactions de file d'attente Tests plus complets sur les jobs

Laravel 11 impose-t-il PHP 8.2 ?

Oui. Laravel 11 requiert PHP 8.2 au minimum et prend en charge PHP 8.2 et 8.3. C'est souvent le vrai sujet d'une montée de version : si votre serveur tourne encore en PHP 8.1 ou plus ancien, il faudra d'abord le mettre à jour.

C'est de toute façon une bonne pratique. Selon le calendrier officiel de PHP, PHP 8.1 n'est plus qu'en support de sécurité depuis fin novembre 2023, et les versions plus anciennes ne sont plus du tout maintenues.

Combien de temps Laravel 10 et 11 sont-ils maintenus ?

Laravel publie une version majeure par an, avec une politique de support claire :

Version PHP Sortie Corrections de bugs jusqu'au Correctifs de sécurité jusqu'au
Laravel 10 8.1 à 8.3 14 février 2023 6 août 2024 4 février 2025
Laravel 11 8.2 à 8.3 12 mars 2024 3 septembre 2025 12 mars 2026

Autrement dit, une application en Laravel 10 est encore parfaitement supportée aujourd'hui, mais les corrections de bugs s'arrêtent cet été.

Faut-il migrer vers Laravel 11 maintenant ?

Les cas où il faut migrer rapidement

  • Vous démarrez un nouveau projet : partez directement sur Laravel 11.
  • Vous êtes sur Laravel 9 ou antérieur : ces versions ne reçoivent plus de correctifs de sécurité. La migration est une priorité, en passant éventuellement par Laravel 10.
  • Vous avez besoin d'une nouveauté précise, comme Reverb.

Les cas où l'on peut planifier sereinement

  • Vous êtes sur Laravel 10 avec une application stable : vous avez jusqu'à début 2025 pour les correctifs de sécurité. Planifiez la migration dans les prochains mois, idéalement lors d'un lot d'évolutions, plutôt que dans l'urgence.

Faut-il adopter la nouvelle structure ?

Non, et c'est une bonne nouvelle. Le guide de mise à niveau précise que Laravel 11 fonctionne avec la structure d'une application Laravel 10 : il n'est pas nécessaire de réorganiser vos fichiers. La structure allégée concerne surtout les nouveaux projets.

Comment se déroule une migration vers Laravel 11 ?

Laravel estime la mise à jour d'une application standard à une quinzaine de minutes. Sur une application métier réelle, avec de nombreuses dépendances et des années d'historique, il faut surtout du temps de test. Notre démarche :

  1. Mettre à jour PHP en 8.2 ou 8.3 sur les environnements de test puis de production.
  2. Vérifier les dépendances : chaque paquet utilisé doit proposer une version compatible (Sanctum 4, Passport 12, etc.).
  3. Appliquer les changements du guide : les plus sensibles concernent les migrations de base de données (les modificateurs de colonnes doivent désormais être tous redéclarés lors d'un change()), le passage à Carbon 3 et la publication des migrations de certains paquets.
  4. Lancer la suite de tests automatisés, puis des tests manuels sur les parcours critiques.
  5. Déployer en production avec un plan de retour arrière.

Des outils comme Laravel Shift peuvent automatiser une partie du travail, mais ne remplacent pas la phase de test.

Et si votre application n'a pas été mise à jour depuis longtemps ?

C'est fréquent : une application développée il y a quelques années fonctionne, personne n'y touche… jusqu'au jour où l'hébergeur retire une ancienne version de PHP ou où une faille est publiée. Plus l'écart de versions est grand, plus la migration est coûteuse. Une mise à jour annuelle, calée sur le rythme de Laravel, reste la stratégie la plus économique.

C'est ce type de suivi dans la durée que nous assurons sur les logiciels métier sur mesure, comme l'outil web développé pour l'Aéroport Nice Côte d'Azur. Pour comprendre ce qu'est une application web et comment elle vit, relisez aussi nos fondamentaux de l'application web.

FAQ

Mon application Laravel 10 va-t-elle cesser de fonctionner ?

Non. Elle continue de fonctionner normalement. Simplement, elle ne recevra plus de corrections de bugs après le 6 août 2024, ni de correctifs de sécurité après le 4 février 2025.

Laravel 11 est-il plus rapide ?

La version apporte des optimisations ciblées, par exemple pour les tests avec une base SQLite en mémoire. Pour une application existante, le gain de performance dépend surtout de la montée de version de PHP et de la qualité du code.

Faut-il réécrire l'application pour profiter de Laravel 11 ?

Non. La montée de version se fait progressivement, sans réécriture, et la nouvelle structure n'est pas obligatoire pour les applications existantes.

Qu'est-ce que Reverb change par rapport à Pusher ?

Reverb est auto-hébergé : vous gardez la maîtrise de l'infrastructure et évitez un abonnement à un service tiers, en échange d'un serveur à administrer.

En conclusion

Laravel 11 est une version agréable : plus légère pour les nouveaux projets, compatible avec l'existant et riche en petites améliorations utiles. Pour une application en Laravel 10, pas d'urgence, mais une migration à planifier en 2024. Vous souhaitez faire le point sur votre application ? Contactez-nous.

Plus d'articles

Développement & IA
Développement & IA

Logiciel métier sur mesure ou SaaS : comment choisir ?

Abonnement à un SaaS du marché ou logiciel métier sur mesure : le bon choix dépend moins de la technologie que de vos processus, de vos intégrations et de l'horizon de votre entreprise. Voici une grille de décision concrète.

Jérémie Elbaz
Développeur Fullstack

Donnez vie à votre projet

Contacter NiceCorp