Nieuwe features in Laravel 10
Dirk Jan Laros · 5 minuten leestijd · Gepubliceerd op 13-2-2023

Nieuwe features in Laravel 10

  • Release schema veranderd
  • Updates & Support
  • PHP 8.1+
  • Type hints
  • Database migratie change() is native supported
  • Nieuw: Laravel Pennant
  • Update: Laravel Telescope en Laravel Horizon

Release schema veranderd

Laravel lijkt een nieuwe filosofie aangenomen te hebben als het gaat om major-releases. Nieuwe functionaliteiten werden in Laravel 8 al wel eens toegevoegd in minor-releases waarbij backwards-compatibility een must is. In Laravel 9 kwam dit vaak elke week voor! Al het oude blijft werken én je krijgt nieuwe features. In de documentatie van Laravel 10 is te lezen dat dit een bewuste keuze is van het Laravel team om onderhoudstijd voor developers te beperken.

Dat betekent dat major-releases waarschijnlijk voornamelijk onderhoudstaken gaan bevatten om bij te blijven bij ‘upstream dependencies’ zoals de PHP versie. Major-releases worden dus vooral verbeterde versies van de vorige versies, zonder dat ze veel bijzondere toevoegingen zullen hebben en zonder dat het veel onderhoudstijd gaat kosten.

Release data

Laravel 10 is op 15 februari 2023 uitgebracht. In eerste instantie zou de release 7 februari 2023 plaatsvinden maar dat werd uitgesteld naar “Q1 2023”. Een release in het eerste kwartaal lijkt de nieuwe normaal te worden.

Updates & Support

Laravel 10 krijgt updates tot en met 6 augustus 2024 en er zullen security fixes worden uitgevoerd tot en met 4 februari 2025. Let op, deze datums kunnen dus wel eens veranderen.

PHP 8.1+

Laravel 10 ondersteund alleen PHP 8.1 en hoger. Support voor PHP versies ouder dan 8.1 vervalt.

Type hints

Type hints worden volgens de nieuwe PHP manier geïmplementeerd zodat de grote documentatieblokken kleiner worden. Hierbij een voorbeeld van Laravel 9 vs. Laravel 10.

Laravel 9:

/**
 * Display a listing of the resource.
 *
 * @return \Illuminate\Http\Response
 */
public function index()
{
    //
}

Laravel 10:

/**
 * Display a listing of the resource.
 */
public function index(): Response
{
    //
}

Database aanpassen (native)

Iedereen die wel eens een database kolom wilde aanpassen heeft kennis gemaakt met de doctrine/dbal package. Deze package had je nodig om überhaupt iets bestaands in je database te wijzigen. In Laravel 10 is dat niet meer nodig, tenzij je SQLite gebruikt.

Er is een overzicht met welke databases native support hebben in Laravel 10.

Nieuw: Laravel Pennant

Laravel Pennant is een nieuwe uitbreiding op het Laravel ecosysteem. Met Pennant kan je je applicatie opdelen in verschillende features met zogenaamde feature-flags. Hiermee is het mogelijk stapsgewijs applicatiefuncties uit te rollen, nieuwe interface-ontwerpen te A/B-testen of andere ontwikkelstrategieën toe te passen.

Alles over deze uitbreiding is terug te vinden in de documentatie van Laravel Pennant.

Updates voor Laravel Telescope en Horizon

Laravel Telescope en Laravel Horizon hebben een kleine facelift gekregen met een nieuwe frisse layout en nieuwe fontjes. Technisch werkt alles nog steeds hetzelfde. Vergeet tijdens het updaten niet de assets opnieuw te publiceren.

Snel aan de slag?
Of gewoon een vraag?

stuur een e-mail naar
info@q2-software.nl