Statamic Peak

Article

De Laravel 5.5 à Laravel 8, j'ai manqué quoi?

De retour sur une version à jour de Laravel après quelques années, je fais un petit récapitulatif de tous les changements.

Suite à un projet client démarré en 2018 poursuivi sans montée de version, j'ai l'habitude de Laravel 5.5 et j'ai assez peu suivi les mises à jour du framework.

J'en profite pour faire un article avec les plus grandes nouveautés à ne pas manquer !

Si vous cherchez des informations sur la dernière version du framework, je prépare un compendium sur Laravel.

Changement de méthode de versionning

Traditionnellement, Laravel utilise une version sous la forme paradigme.majeure.mineure. Comme Taylor est satisfait par le paradigme actuel, il n'y aura plus de modifications comme nous l'avons connu lors des passages de Laravel 4 vers Laravel 5. Il était donc tout naturel de laisser de côté cette information. Laravel suit maintenant une notation de semantic versioning classique : majeure.mineure.patch.

Classes pour les channels

On a l'habitude d'utiliser un controller sous la forme de classe dans nos développements mais ce n'était pas encore possible pour les channels. C'est maintenant le cas !

Passage à Bootstrap 4

Il n'y a pas grand chose à dire de plus sur ce point, le framework suit les mises à jour de Bootstrap.

Par ailleurs, le système d'inscription / connexion présent de base dans Laravel est maintenant un package composer à part. Il existe au choix une version Vue ou React.

Laravel Nova

Depuis Laravel 5.7, Nova est un dashboard d'administration créé pour Laravel et coûtant 99€ pour les développeurs individuels ou 199€ pour les agences. Cela permet de gagner un temps considérable lors du démarrage d'un projet compte tenu de l'omniprésence des panels d'administration.

Il est possible de personnaliser Nova et d'y ajouter des nouvelles fonctionnalités mais le produit n'est pas prévu pour être intégralement modifié. Il ne conviendra pas forcément à un besoin avec un design à intégrer.

Laravel Telescope

Nouvel outil de debug présent dans l'écosystème Laravel, Telescope permet de lister les requêtes de cache, les commandes exécutées, les évènements, les exceptions, les jobs, les e-mails, les modifications de modèles, les requêtes SQL et même es tâches planifiées !

Laravel Vapor

Nouveau produit créé par Taylor Otwell, il s'agit un système de déploiement de Laravel pour l'architecture serverless d'Amazon Lambda et l'interfacage avec les autres produits AWS.

Laravel Sanctum

Nouvel arrivant dans l'écosystème Laravel, Sanctum est un système d'authentification clef en main pour vos applications Webs et mobiles. C'est un bon compromis entre Laravel UI qui concerne uniquement les applications web avec une connexion par session et Laravel Passport qui est un serveur Oauth 2 à part entière.

CORS

Grand absent des middlewares de Laravel jusqu'à présent, il est maintenant possible de configurer le support des requêtes Cross Origin !

Laravel Jetstream

Encore un nouveau projet dans l'écosystème Laravel. C'est un template de démarrage tout en un avec connexion, inscription, vérification d'email, 2FA, session, Laravel Sanctum et même une gestion d'équipe optionnelle. C'est un produit réalisé avec Tailwind CSS et Blade / Livewire ou VueJS / Inertia.