Catégories
Laravel

Laravel 6.12 est disponible

Une semaine après la sortie de Laravel 6.11, une nouvelle mouture – Laravel 6.12, est déjà disponible. Comme la version précédente, il n’y a pas de changements majeurs.

Mais tout de même on verra qu’au programme, hormis les traditionnelles corrections de bugs, on va trouver de nouveaux helpers, de nouvelles méthodes et le support restauré de phpunit 7.

Allez embarque avec moi, je te fais le tour du propriétaire dans le détail !

Quels sont les ajouts de Laravel 6.12 ?

Ajout d’une méthode ServiceProvider::loadFactoriesFrom

Cette méthode va se comporter de la même manière que les méthodes loadRoutesFrom ou encore loadMigrationFrom.

Elle va vous permettre de charger toutes vos factories en une seule fois, via une structure de code comme celle ci-dessous :

$this->loadFactoriesFrom('source/database/factories');

$this->loadFactoriesFrom([
    'source_one/database/factories', 
    'source_two/database/factories',
]);

Ajout d’une méthode TestResponse::dumpSession()

Cette méthode vous permettra dans un TestCase de dumper directement toutes les données de votre session ou uniquement celles que vous souhaitez en passant les clés retenues dans un tableau d’arguments.

    public function testBasicTest()
    {
        $response = $this->get('/');

        $response->dumpHeaders();

        $response->dumpSession();

        $response->dump();
    }

Ajout d’une méthode Str::isUuid

Il était déjà possible de déterminer si une string était un Uuid via la classe Validator. La méthode utilisée pour cela a été simplement transposée dans ce nouveau helper.

Str::isUuid('a0a2a2d2-0b87-4a18-83f2-2529882be2de'); // Returns true
Str::isUuid('laravel'); // Returns false

Laravel 6.12 restaure le support de phpunit 7

A la demande de la communauté le support de phpunit 7 a été retauré. En effet, l’utilisation de phpunit 8 pose certains soucis.

Dans tous les cas, pour Laravel 7 le support de phpunit 7 sera supprimé. Cette future version de ton framework préféré ne supportera que phpunit >= 8.

Voici la matrice Laravel / PHP / phpunit :

Laravel 6.12 restaure le support de phpunit

Ajout d’une méthode Request::boolean

Ce helper ajouté à l’obhet Request permet d’obtenir un boolean à partir d’une entrée. Il utilise les règles de conversion sur les booléens suivantes :

  • true, 1, « 1 » retournent true
  • false, 0, « 0 » retournent false
  • tout ce qui n’est pas définit ici retourne false par défaut

Ce helper permet de simplifier la syntaxe précédente :

// Before
$availableForHire = filter_var(Request::boolean('available_for_hire'), FILTER_VALIDATE_BOOLEAN);

// After
$availableForHire = Request::boolean('available_for_hire');

Ajout d’une méthode Database \Eloquent\FactoryBuilder::createMany()

Tu as envie de créer plusieurs records en une seule fois, cette méthode est faite pour toi.

Regardes plutôt :

factory(User::class)->create([
    'name' => 'Taylor',
]);
factory(User::class)->create([
    'name' => 'John',
]);
factory(User::class)->create([
    'name' => 'Doe',
]);
factory(User::class)->createMany([
    [
        'name' => 'Taylor',
    ],
    [
        'name' => 'John'
    ],
    [
        'name' => 'Doe'
    ],
]);

Laravel 6.12 ajoute des options manquantes à PhpRedis

Ce PR ajoute la prise en charge des options sur les connexions PhpRedis qui n’étaient pas autorisées auparavant. Pour en savoir plus, vous pouvez consulter directement le PR en question.

Les bugs corrigés par Laravel 6.12

3 bugs ont étés corrigés par cette version :

  • Fixed Cache\RedisLock::acquire() (#311688683a3d)
  • Fixed database url parsing for connections with no database specified (#31185)
  • Prevent ambiguous column with table name prefix (#31174)

Optimisation embarquée dans cette version

Cette version 6.12 de Laravel embarque une optimisation sur la mémoire utilisée lors d’un téléchargement de fichiers relativement gros.

Tu veux en savoir plus sur Laravel 6 ?

Après avoir lu cet article, tu souhaites en savoir plus sur la 6ème version de Laravel, connaître sur le bout des doigts cette nouvelle LTS ?

Je t’invite alors à lire mon article sur les apports de cette version majeure.

Aidez nous à nous améliorer en évaluant cet article :
[Total: 1 Moyenne: 5]
Tu souhaite créer ton premier site avec Laravel et comprendre comment fonctionne ce framework ?
Rejoins ma formation de plus de 4h qui parle exactement de cela ! ;-)En tant que lecteur de ce blog, tu bénéficies de 10% de réduction en cliquant sur ce lien ??.
Rejoins vite les dizaines d’élèves qui ont déjà rejoins cette formation dans laquelle tu pourras te familiariser avec les notions suivantes de Laravel : l’installation de Laravel, le routage, les controllers, les modèles, l’ORM Eloquent, le moteur de template Blade, les envois de mails, la gestion des notifications.

Tu hésites ? Je te comprends et je souhaite te préciser plusieurs choses :

1. Mes élèves sont ma meilleure carte de visite :
Voici ce qu’ils pensent de cette formation

24/06/2020 : Vraiment très bien conçu et dispensé. Le rythme est bon, clair, précis donc essentiel à une bonne compréhension. Les réponses aux questions sont dans le même esprit, donc … Un grand merci à Frédéric pour ce cours de qualité. Vivement le prochain !!

17/06/2020 : Très bon cours ! Clair même pour un débutant (qui a des bases quand même). Formateur sympa 😉 vivement d’autre cours.

Retrouve tous les avis, sur la page de la formation 😉

2. Le nombre de coupons est limité !

Si tu veux en profiter, n’attends pas trop longtemps 😉

Alors à tout de suite de l’autre côté, je l’espère !

Par HappyToDev

Absolument passionné depuis toujours par l'informatique et la programmation, je souhaite via ce blog vous faire passer un peu du savoir que j'ai accumulé depuis des années.
Et même, pourquoi pas, vous aider à faire le premier pas dans le développement web.

Vous êtes prêts ?
Alors allons y ensemble et n'oubliez pas que les débutants sont vraiment les bienvenus.

2 réponses sur « Laravel 6.12 est disponible »

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.