NashTech Insights

Laravel 10: What’s New in the Latest Release

Tien Nguyen
Tien Nguyen
Table of Contents
startup, whiteboard, room-3267505.jpg

For several years, Laravel [1] has been a popular choice among web application developers due to its elegant syntax, user-friendly tools, and robust features. With an active community behind it, Laravel continues to evolve, introducing new features and improvements with each release. The most recent version, Laravel 10, was released earlier this year, offering developers a bundle of exciting features to explore.

Laravel 10 – New Updates

Argument and Return Types

Laravel 10 brings significant updates to the framework’s core application structure and method signatures. It introduces argument and return types while removing extraneous ‘doc block’ type-hint information. Importantly, these changes are fully backward compatible with existing applications, ensuring that applications without these type hints will continue to function as expected.

Test Profiling

The introduction of a new ‘--profile‘ option within the test command is a great enhancement. Slow tests can often be a source of frustration for developers, as they can significantly extend the testing process, leading to longer development cycles and decreased productivity. With this new option, developers can easily identify and address these slow tests, making the development and testing process more efficient and less frustrating.

Laravel 10 - Test Profiling
Laravel 10 – Test Profiling

Pest Scaffolding

Pest [2] is a testing framework designed to enhance the testing experience by emphasizing readable and understandable tests, employing a code syntax closely resembling natural human language. With Laravel 10, newly created Laravel projects now include Pest test scaffolding by default.Ddevelopers can enable this feature simply by using the ‘–pest‘ flag when creating a new application via Laravel Installer:

laravel new sample-app --pest

However, it is important to note that to use Pest effectively, certain requirements must be met. Developers should ensure their environment is equipped with PHP v8.1 and PHPUnit v10 or higher. Meeting these prerequisites is necessary for initializing Pest tests.

Horizon & Telescope UI Renovation 

Horizon and Telescope have received a makeover, giving them a modern appearance with better typography, spacing, and design.

Laravel Horizon Dashboard
The Horizon Dashboard
Laravel Telescope Dashboard
The Telescope Dashboard
  • Horizon [3] offers a comprehensive dashboard and configuration system for Redis queues in Laravel. It enables straightforward monitoring of vital queue metrics, including job throughput, runtime, and failures.
  • Telescope [4] is a valuable tool for developers’ local environments. It offers insights into various aspects of your application, including incoming requests, exceptions, log entries, database queries, queued jobs, email activity, notifications, cache operations, scheduled tasks, variable details, and much more.

Laravel 10 – New Packages

The Laravel Pennant

Laravel Pennant [5] is a new first-party package designed for efficient management of application feature flags. It includes two built-in drivers: an in-memory array driver for quick access and a database driver for persistent feature storage.

You can leverage this package in various scenarios, such as:

  • Gradually introducing new application features with confidence.
  • Conducting A/B tests for new interface designs, in line with a trunk-based development strategy.
  • Transitioning to a new API based on specific user requirements or business rules.

Features can be easily defined via Feature::define method

use Laravel\Pennant\Feature;
use Illuminate\Support\Lottery;

Feature::define('new-onboarding-flow', function(){
    return Lottery::odds(1, 10);

Easily determine if the user has access to the given feature.

if (Feature::active('new-onboarding-flow')){
    // ...

Blade directives are also available for access evaluation.

     <div><!-- ... --></div>

Process Interaction

Laravel 10 introduces an elegant abstraction layer for initiating and managing external processes through a newly added Process facade [6].

use Illuminate\Support\Facades\Process;

$result  = Process::run('ls -la');

return $result->output();

Developers may even start Processes in pools.

use Illuminate\Process\Pool;
use Illuminate\Support\Facades\Process;

[$first, $second, $third] = Process::concurrently(function (Pool $pool) {
    $pool->command('cat first.txt');
    $pool->command('cat second.txt');
    $pool->command('cat third.txt');

return $first->output();

Developers can even fake Process for testing purpose.

// ...
Process::assertRan('ls -la');

Support Roadmap of Laravel

As we may know, Laravel shifted to an annual release cycle starting from Laravel 8. Previously, major versions were released every 6 months. This adjustment aims to alleviate the maintenance workload on the community while creating space for their development team to deliver impressive, impactful new features without causing any disruptions. Therefore, they had shipped a variety of robust features to Laravel 9 without breaking backwards compatibility.

Laravel Support Roadmap

Additionally, for all Laravel releases, bug fixes are provided for 18 months, and security fixes are provided for 2 years. For all additional libraries, including Lumen, only the latest major release receives bug fixes. 


In summary, Laravel 10 represents yet another milestone in the evolution of the Laravel framework. With its commitment to developer-friendly syntax, powerful features, and modern tools, Laravel continues to be the go-to choice for PHP web artisans. With this latest release, it had witnessed exciting enhancements, fresh features, and improvements that promise to streamline web development even further. So, let’s upgrade to Laravel 10 to unlock the latest features and meet the demands of modern web development.


[1] Laravel – The PHP Framework for Web Artisans

[2] Pest | The elegant PHP Testing Framework

[3] Horizon Package

[4] Telescope Package

[5] Laravel Pennant

[6] Processes

Tien Nguyen

Tien Nguyen

Tien is an Engineering Manager at NashTech Vietnam. With over 12 years of experience in the field of software development, he specializes in web development and modernization, have extensive knowledge of PHP and Python technology stack. He also passionate about AWS cloud services and software architecture.

Leave a Comment

Your email address will not be published. Required fields are marked *

Suggested Article

%d bloggers like this: