Laravel 9 : sortie imminente

Laravel 9 sera la prochaine version LTS de Laravel : sa date de sortie est prévue pour le 25 janvier 2022. 

Date de sortie de Laravel 9 reportée

La dernière version de Laravel devait sortir courant septembre 2021, mais la date de sortie a été repoussée au 25 janvier 2022. Ce retard s’explique en partie par l’intégration de la nouvelle version de Symfony.

Par conséquent, cela chamboule le calendrier des futures versions :

  • Laravel 10 : janvier 2023
  • Laravel 11 : janvier 2024

Calendrier Sortie Laravel

Le framework Laravel 9 exige PHP 8 minimum

Comme Laravel 9 nécessitera Symfony 6.0 et que ce dernier intègre au moins un prérequis de PHP 8, le nouveau framework ne fonctionnera donc pas avec une version de PHP antérieure à la 8. Pour rappel, la version 8 de PHP est sortie en novembre 2020 et s’accompagne de nouvelles fonctionnalités comme le compilateur JIT (Just In Time).

Migration de stub anonyme

Une nouvelle fonctionnalité appelée Anonymous Migrations a fait son apparition dans la version 8.37 de Laravel pour apporter une solution à ce problème publié sur Github. Celle-ci empêche les collisions de noms de classes de migration.

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
 
 return new class extends Migration {
 
  /**
  * Run the migrations.
  *
 * @return void
 */
 public function up()
   {
Schema::table('people', function (Blueprint $table) {
    $table->string('first_name')->nullable();
    });
   }
};

Ce sera le comportement par défaut dans Laravel 9 lorsqu’on exécutera la commande php artisan make:migration

Fonctions de chaîne PHP8 pour la classe Str

Puisque PHP 8 sera la norme pour utiliser Laravel 9, les fonctions str_contains() ,  str_starts_with()  et  str_ends_with() seront très probablement utilisées en interne dans la classe \Illuminate\Support\Str

Le fichier server.php peut être supprimé

Une fonctionnalité mineure mais nous pourrons maintenant supprimer le fichier server.php de notre projet, inclus d’office dans le framework. Ce fichier n’est utilisé que pour la commande php artisan serve.

Et plus encore…

Pour conclure, je vous donne rendez-vous dans moins de 20 jours pour découvrir les autres fonctionnalités de Laravel 9. A bientôt 😉