Laravel Framework v13.35.0 wurde am 6. Oktober um 13:54 von github-actions veröffentlicht. Die Version enthält die aktuellen Änderungen für den 13.x-Zweig.

Queue-Worker akzeptieren bei queue:work --memory nun Prozentwerte. Queue::fakeFor() gibt eindeutige Job-Sperren frei, und SQS-Bulk-Operationen normalisieren Queue-Werte. Geerbte Queue-Attribute bleiben erhalten, wenn ein Kind Queueable verwendet. Die Signalverarbeitung erhält Tests für notifyJobOfSignal mit SIGALRM.

Der Scheduler erhält Schedule::alwaysOnOneServer(). Die Ausgabe von schedule:list --json enthält onOneServer. Lang laufende geplante Befehle können auf schedule:interrupt reagieren. Der Listenbefehl verarbeitet Zeitzonenwechsel über Sommerzeitgrenzen hinweg. Lokale Laufwerke erhalten die Konfigurationsoption lazy_root_creation. Parallel kompilierte View-Callbacks tolerieren gleichzeitige Ausführungen.

Die Response Factory erhält die Methode markdown(). Das Routing akzeptiert die Methode QUERY. Der Route-Cache findet die Root-Route auch bei einer Auslieferung aus einem Unterverzeichnis. Str::finish und Str::start wurden optimiert. Die Ausnahmebehandlung erhält mehrere Erweiterungen, darunter den Rückgabetyp never für failedBasicResponse. Referenzzyklen im Standard-Callback von PendingRequest::throw() sowie in den Callbacks headers() und priority() von Mailable werden behoben.

DatabaseRule bewahrt in where() und whereNot() nun false-Werte. Duration-Helfer erhalten Gleitkommawerte. forceCreate() berücksichtigt withAttributes(). HasOneThrough korrigiert Schlüsselvergleiche bei is(), One-of-many-Beziehungen und die Qualifizierung vorab geladener Spalten. chunkById() und lazyById() laufen bei Primary Keys mit Cast nicht mehr endlos. Beim Trennen eines MorphPivot werden die Besitzer korrekt aktualisiert.

Collections behalten ihren Lazy-Status in collapse(), collapseWithKeys() und flatten(). DB::setDefaultConnection() verarbeitet Enums korrekt. JSON-Pfadaktualisierungen bewahren Änderungen in AsEncryptedArrayObject und AsEncryptedCollection. Die MySQL-Behandlung von whereJsonOverlaps() mit JSON-Pfad wird korrigiert. Weitere Query-Fixes betreffen Bindings in cursorPaginate(), Casts geklonter Queries bei withCasts(), findOrNew() und chunkMap() für HasManyThrough und BelongsToMany sowie Beziehungsattribute bei incrementOrCreate(). loadMissing() baut bei fehlenden Beziehungen keine Query mehr und verarbeitet verschachtelte Beziehungen in gemischten morphTo-Modellen. Eloquent Collection::findOrFail() akzeptiert eine ID-Sammlung.

incrementOrCreate() setzt Fremdschlüssel und zusätzliche Attribute bei der Erstellung korrekt. morphTo()->withTrashed() funktioniert mit has() und whereHasMorph(). FilesystemManager::set(), forgetDisk() und purge() akzeptieren Enums. Die Dokumentation für copyToDisk() und moveToDisk() beschreibt die Enum-Unterstützung. Weitere Korrekturen betreffen verschlüsselte JSON-Pfade und Beziehungsränder.

Die Authentifizierung akzeptiert ein null-Passwort in hashPasswordForCookie. GenericUser::getAuthPassword() verarbeitet Benutzer ohne Passwort. Downloads unterstützen Dateinamen ohne ASCII-Entsprechung. Fehler bei unbekannten Feldern ignorieren _token und _method. URL-Templates bleiben ohne URL-Parameter unverändert. Wiederverwendete Models gelangen nicht mehr in spätere Factory-Aufrufe.

Parallele Tests mit PHPUnit 13.4 funktionieren wieder. AsHtmlString-Attribute werden korrekt serialisiert, und ein Test für die pwnedpasswords-API verwendet einen Fake-Service. Datenbank- und allgemeine Tests wurden verbessert. Die Implementierung von defaults() ist über ein Opt-in-Trait verfügbar. Die gebündelte Abhängigkeit source-map-js wechselt von 1.2.1 auf 1.2.2.