Terug naar blog
Laravel

Laravel 13.4 — FormRequest Strict Mode en Queue Job Inspection

Norrie
9 april 2026

Deze release zit boordevol praktische verbeteringen

Laravel 13.4.0 is uit, en deze release bevat een reeks praktische verbeteringen voor de dagelijkse ontwikkelaar.

FormRequest Strict Mode

Een van de meest waardevolle toevoegingen in 13.4 is de nieuwe strict mode voor FormRequest. Tot nu toe valideerde Laravel de inhoud van bekende velden, maar negeerde het stilzwijgend alle extra velden die een client meestuurde. Zo kon een gebruiker ongemerkt velden als is_admin of role meesturen zonder een validatiefout te triggeren.

Met de nieuwe strict mode blokkeer je dit gedrag. Je schakelt het globaal in via je AppServiceProvider:

FormRequest::failOnUnknownFields(! app()->isProduction());

Of per request class via het #[FailOnUnknownFields] attribuut. Handig voor requests waarbij je juist flexibel wil zijn - zoals een webhook endpoint - kun je de strict mode per class uitzetten met #[FailOnUnknownFields(false)].

De standaardwaarde blijft false, dus bestaande applicaties worden niet geblokkeerd zonder aanpassing.

Queue Job Inspection

De Queue facade heeft drie nieuwe methoden gekregen: pendingJobs(), delayedJobs() en reservedJobs(). Elke methode geeft een Collection terug van InspectedJob-instanties met properties als uuid, name, attempts en createdAt. Handig voor monitoring en debugging van je queue in productie. Ondersteund op Database- en Redis-drivers.

Queue::pendingJobs();   // klaar om verwerkt te worden
Queue::delayedJobs();   // wachten op hun vertraging
Queue::reservedJobs();  // worden momenteel verwerkt

#[Delay] attribuut nu overal ondersteund

Het #[Delay]-attribuut dat in 13.3.0 werd geïntroduceerd werkte alleen via de Event Dispatcher. In 13.4 is dit uitgebreid naar de Bus Dispatcher en NotificationSender, zodat een gedispatchte job zijn vertraging nu overal correct meekrijgt.

Carbon overflow optie

De plus() en minus() methoden van Carbon hebben een nieuwe overflow-optie gekregen waarmee je bepaalt hoe datum-rekenkunde omgaat met maandgrenzen. Met overflow: false krijg je bij 31 januari + 1 maand netjes 28 februari terug.

Carbon::parse('2026-01-31')->plus(months: 1, overflow: false)->toDateString();
// => '2026-02-28'

Upgrade

Er zijn geen breaking changes te verwachten. De nieuwe failOnUnknownFields() staat standaard uit, dus je kunt rustig upgraden en daarna zelf beslissen of je strict mode wil activeren.

Meer details in de officiële changelog.