Laravel 9 est maintenant disponible et comprend de nombreuses nouvelles fonctionnalités, notamment une version minimale de PHP v8.0, des groupes de routes de contrôleurs, une page d’erreur Ignition par défaut rafraîchie, le moteur de base de données Laravel Scout, l’intégration de Symfony mailer, Flysystem 3.x, des assesseurs/mutateurs Eloquent améliorés, et bien d’autres fonctionnalités.
Les nouvelles fonctionnalités
Avant d’aborder les nouvelles fonctionnalités, nous aimerions souligner qu’à partir de Laravel 9, Laravel publiera une nouvelle version majeure tous les douze mois environ, au lieu de six mois auparavant :
Il utilise une variété de paquets gérés par la communauté ainsi que neuf composants Symfony pour un certain nombre de fonctionnalités du framework. La sortie de Symfony 6.0 est prévue en novembre. Pour cette raison de Laravel, nous avons choisi de retarder la sortie de la version 9.0 jusqu’en 2022.
Les dates des prochaines versions
En retardant la sortie, nous pouvons mettre à niveau nos composants Symfony sous-jacents vers Symfony 6.0 sans être obligés d’attendre septembre 2022 pour effectuer cette mise à niveau. Cela nous permet de mieux nous positionner pour les futures versions, car nos versions annuelles auront toujours lieu deux mois après les versions de Symfony.
À partir de la documentation sur la politique de support des versions, voici ce à quoi vous pouvez vous attendre à l’avenir avec les dates provisoires des prochaines versions :
Version | PHP (*) | Release | Bug Fixes Until | Security Fixes Until |
---|---|---|---|---|
6 (LTS) | 7.2 – 8.0 | September 3rd, 2019 | January 25th, 2022 | September 6th, 2022 |
7 | 7.2 – 8.0 | March 3rd, 2020 | October 6th, 2020 | March 3rd, 2021 |
8 | 7.3 – 8.1 | September 8th, 2020 | July 26th, 2022 | January 24th, 2023 |
9 (LTS) | 8.0 – 8.1 | 2022, February 8th | 2024, February 8th | 2025, February 8th |
10 | 8.0 – 8.1 | February 7th, 2023 | August 7th, 2024 | February 7th, 2025 |
Les principales fonctionnalités
Le Framwok Laravel 9 est la prochaine version de support à long terme (LTS) et recevra des corrections de bogues jusqu’en février 2024 et des corrections de sécurité jusqu’en février 2025. Voici quelques-unes des principales fonctionnalités que nous avons couvertes en détail dans notre article intitulé « A look at what is coming to Laravel 9 » :
- PHP 8 est la version minimale dans la version 9
- Nouveau design pour routes:list
- Nouvelle option test –coverage qui affiche la couverture directement dans le terminal
- Les migrations de stub anonymes sont maintenant par défaut.
- Nouvelle interface de création de requêtes
- Fonctions de chaîne PHP 8
- Déplacement de la fonctionnalité mailer de SwiftMailer vers Symfony Mailer
- Flysystem 3.x
- Amélioration des accesseurs/mutateurs Eloquent
- Liaisons de routes implicites avec les Enums (PHP 8.1)
- Groupes de routes de contrôleur
- Casting d’attributs éloquents avec les Enums
- Liaisons Scoped forcées
- API Laravel Breeze et Next.js
- Moteur de base de données Laravel Scout
- Index plein texte / Clauses Where
- Rendu des modèles de lames en ligne
- Serveur Soketi Echo
- Vues de pagination Bootstrap 5 en option
- Page d’exception Ignition améliorée
- Nouvelles fonctions d’aide str() et to_route()
Nouvelle conception de la page d’accueil
Le site web de Laravel a reçu un nouveau design pour le lancement de la version 9. Il a été conçu par @martinrariga, avec la coloration syntaxique Torchlight que nous utilisons également sur ce site.
En savoir plus sur Laravel 9.x
Ce ne sont là que quelques-unes des nouvelles fonctionnalités de Laravel 9. Pour obtenir une liste complète, consultez les notes de mise à jour de Laravel 9 ainsi que le guide de mise à niveau. N’oubliez pas non plus Laravel Shift si vous souhaitez une mise à jour facile.
Si vous préférez le format vidéo, consultez Laracasts : What’s New in Laravel 9, qui propose également des vidéos gratuites sur cette version.