The Daily Commit · Édition de rubrique La une PHP AI Dev EN DE FR ES

The Php Times

Versions — Écosystème

Laravel 13.37.0 consolide les files et Eloquent


Laravel 13.37.0 est sorti le 16 octobre avec des corrections pour les files d’attente, Eloquent et l’accès aux bases de données.

LARAVEL FRAMEWORK RELEASES, 16 octobre 2026 sélectionné par Sönke

queue:failed reçoit désormais l’option --queue, et queue:forget accepte plusieurs identifiants. L’Image API prend en charge JPEG XL, et les disques FTP/SFTP détectent mieux les types MIME. La version corrige aussi des bugs liés aux verrous de jobs et aux requêtes de relations. Le signalement de l’état des migrations et des exceptions s’en trouve également amélioré.

Laravel 13.37.0 consolide les files et Eloquent
Capture d’écran : Laravel Framework Releases ↗

Laravel a publié la version 13.37.0 du framework le 16 octobre pour la branche 13.x. Cette version corrige une condition de concurrence touchant les jobs qui associent onOneServer() et withoutOverlapping(). Les tests du limiteur tiennent maintenant compte d’un Sleep simulé pour calculer les délais de block().

getForeignKeys() est plus performant sur les serveurs MariaDB et MySQL qui hébergent de nombreuses bases. Eloquent corrige le comportement de has() et withCount() avec les relations one-of-many autoréférencées. Les requêtes d’existence HasOneThrough one-of-many autoréférencées utilisent désormais l’alias de la table intermédiaire. Les types de collection de whereBelongsTo() et whereAttachedTo() sont également corrigés.

Eloquent cursor() ne crée plus d’instances de modèle superflues. Les relations JSON:API imbriquées ne provoquent plus de requêtes N+1. incrementOrCreate() fonctionne maintenant avec les relations through. restore() fonctionne avec les requêtes de suppression logique qui utilisent des jointures. Eloquent Collection findOrFail() traite correctement une instance de modèle. Les accesseurs Attribute mis en cache ne renvoient plus une valeur obsolète après une modification de l’attribut.

Les callbacks de withWhereHas() peuvent sélectionner des colonnes. Les requêtes avec jointures qualifient la colonne par défaut de latest() et oldest(). Les colonnes d’attribut des relations through sont qualifiées dans firstOrNew() et firstOrCreate(). La même correction s’applique à createOrFirst(). Les attributs des ressources JSON:API gèrent maintenant correctement mergeWhen().

Le système de files libère un verrou unique lorsqu’une tentative d’ajout d’un job échoue. Les verrous des listeners en file sont libérés après un échec d’envoi. Queue::fake() libère aussi les verrous uniques de ces listeners. queue:failed accepte la nouvelle option --queue. queue:forget accepte plusieurs identifiants. ScheduledTaskFailed contient maintenant la durée d’exécution.

Les disques FTP et SFTP ajoutent l’option detect_mime_type_using_path. L’Image API prend en charge JPEG XL (JXL). RedirectResponse peut implémenter Responsable. InvokableComponentVariable reçoit un type de retour générique.

Rule::numeric() gagne une option strict. Rule::when() et Rule::unless() acceptent Stringable dans leurs types de paramètres. Les casts chiffrés d’objets et de collections ne restent plus marqués à tort comme modifiés. DynamoDbStore::many() renvoie désormais les valeurs sous les bonnes clés lorsque celles-ci sont numériques.

Les migrations ignorées ne sont plus signalées comme en attente par migrate:status. Les avertissements de démontage sont supprimés lors de la déconnexion de connexions mortes. Le signalement des exceptions a également été amélioré.

Lire la source originale (en anglais) ↗

Évaluer cet article : 0

Tribune des lecteurs

Pas encore de contributions — lance le débat.

← Écosystème — Page B1

"All the Code That's Fit to Ship" · The Daily Commit · Édition écran · Mentions légales · Politique de confidentialité