Articles | Digital Delivery

Laravel 10 nouveautés et améliorations

3 min read

Laravel 10 est la dernière version du framework d'applications Web PHP populaire. Il est livré avec plusieurs nouvelles fonctionnalités et améliorations qui le rendent plus puissant et efficace que jamais. Dans cet article, nous allons explorer les nouvelles fonctionnalités et améliorations de Laravel 10 et fournir des extraits de code pour démontrer leur utilisation.

Laravel 10 abandonne la prise en charge de PHP 8.0

Le framework Laravel supprimera la prise en charge de PHP <= v8.0 dans Laravel 10. La version minimale requise est PHP ^8.1. nous pouvons nous attendre à voir des fonctionnalités 8.1 utilisées dans le framework, telles que les propriétés en lecture seule.

 

Laravel Pennant

Laravel Pennant est un package créé par l'équipe Laravel qui arrivera avec Laravel 10 et fournit des drapeaux de fonctionnalités pour vos applications.

Ce package est un package de drapeau de fonctionnalité simple et léger - sans le cruft. Les indicateurs de fonctionnalité vous permettent de déployer progressivement de nouvelles fonctionnalités d'application en toute confiance, de tester A/B de nouvelles conceptions d'interface, de compléter une stratégie de développement basée sur le tronc, et bien plus encore.

 

Process layer pour Laravel

Travailler avec les processus de test et d'exécution CLI est rendu facile et efficace avec le service Laravel Process.

use Illuminate\Support\Facades\Process;
 
$result = Process::run('ls -la');
 
$result->successful();
$result->failed();
$result->exitCode();
$result->output();
$result->errorOutput();
$result->throw();
$result->throwIf($condition);

Prête à l'emploi, la couche Process offre une variété de fonctionnalités riches, notamment :

  • Méthodes de processus fluides (Fluent process) pour créer une instance de processus avant de l'exécuter
  • Traiter la gestion des sorties au fur et à mesure de leur réception
  • Processus asynchrones
  • Groupes de processus
  • Fonctionnalités de test riches via `fake ()`
  • Prévenir les processus parasites pendant les tests

Jamais auparavant les processus de test n'avaient été aussi simples.

 

Les règles de validation invocables sont les règles par défaut

Avec Laravel 10, les règles de validation invocables sont devenues la valeur par défaut. La création d'une nouvelle règle de validation via artisan donnera désormais le résultat suivant :

# Laravel 9 crée une classe de règles qui implémente la
# Illuminate\Contracts\Validation\Rule interface
artisan make:rule Uppercase
 
# Drapeau Laravel 9 pour créer une règle invocable et implicite
artisan make:rule Uppercase --invokable
artisan make:rule Uppercase --invokable --implicit
 
# Laravel 10 crée une règle invocable par défaut
artisan make:rule Uppercase
 
# Règle implicite de Laravel 10
artisan make:rule Uppercase --implicit

 

Déclarations de type natif dans le squelette Laravel 10

La dernière version de Laravel 10 sera équipée de déclarations de type natives dans le code squelette de l'application. Cette fonctionnalité s'accompagne de quelques considérations, que nous approfondissons dans notre article. Dans l'ensemble, nous pensons que vous apprécierez les conseils de type améliorés lors de la construction de nouveaux projets avec Laravel.

Les dernières fonctionnalités d'indication de type PHP sont incorporées dans les projets Laravel d'une manière qui assure la rétrocompatibilité au niveau du framework.

  • Types de retour
  • Arguments de méthode
  • Les annotations redondantes sont supprimées dans la mesure du possible
  • Autoriser les types de terrain utilisateur dans les arguments de fermeture
  • N'inclut pas les propriétés typées

 

Option de profile pour les tests

Une nouvelle fonctionnalité de Laravel 10 est une option `--profile` qui vous permettra de trouver facilement les tests lents dans votre application.

En utilisant l'option `--profile`, vous pouvez optimiser la vitesse de vos tests et rationaliser le processus d'identification et de dépannage des tests lents, ou les regrouper plus efficacement pour éviter des tests inutiles.

 

Assistant de création de mot de passe dans  Str helpers

Avec la méthode `Str::password`, la génération d'un mot de passe sécurisé et aléatoire de n'importe quelle longueur souhaitée est simplifiée. Le mot de passe sera une combinaison de lettres, de chiffres, de symboles et d'espaces. La longueur par défaut des mots de passe est de 32 caractères.

use Illuminate\Support\Str;
 
$password = Str::password();
 
// 'EbJo2vE-AS:U,$%_gkrV4n,q~1xy/-_4'
 
$password = Str::password(12);
 
// 'qwuar>#V|i]N'

 

Et plus...

Pour rester à jour avec les dernières informations, il est recommandé de vérifier périodiquement la page des versions officielles pour toutes les mises à jour dès qu'elles sont disponibles.