laravel-13-5-redis-cluster-support
Laravel 19 Apr 2026 3 min read

Laravel Framework 13.5.0 Release Overview and Key Developer Improvements

Faisal Ahmed

Faisal Ahmed

Senior Full-Stack Developer

Laravel Framework v13.5.0 is more than a routine patch release. It introduces first-class Redis Cluster support for queues and the ConcurrencyLimiter, expands #[Delay] attribute support to queued mailables, adds Controller Middleware attribute inheritance, broadens enum support across manager drivers, and ships several practical developer-focused improvements.

For teams running Laravel in production, especially with Redis Cluster, queues, or modern attribute-driven patterns, this is a meaningful release.


First Class Redis Cluster Support for Queue and ConcurrencyLimiter

This is arguably the biggest change in 13.5.0.

Previously, Redis Cluster users could hit CROSSSLOT errors because queue-related keys could land in different hash slots:

queues:default 
queues:default:reserved 
queues:default:notify

In Redis Cluster, multi-key operations across slots can fail.

Laravel 13.5.0 now uses Redis hash tags so related queue keys share the same slot:

queues:{default}
queues:{default}:reserved
queues:{default}:notify

This makes Redis queue operations cluster-safe.

Why this matters

This is especially important for:

  • AWS ElastiCache Serverless

  • Redis Cluster deployments

  • High-throughput queue systems

  • Distributed locking and concurrency limiting

Queue Configuration Example

'redis' => [
    'driver' => 'redis',
    'connection' => 'default',
    'queue' => 'emails',
    'retry_after' => 90,
],

With 13.5.0, Laravel handles the cluster-safe key hashing internally.

No application code changes required.


Concurrency Limiter Now Supports Redis Cluster Properly

The same cluster-safe improvement now applies to: Concurrency Limiter

Example:

Redis::throttle('imports')
    ->allow(10)
    ->every(60)
    ->then(function () {
        // Process import
    });

Previously cluster deployments could run into slot issues.

That is now addressed.

This is a major improvement for:

  • Rate-limited jobs

  • Distributed workers

  • Queue throttling

  • High concurrency workloads


Delay Attribute Now Works on Queued Mailables

Laravel already introduced: #[Delay]

for jobs, listeners, and notifications.

Laravel 13.5.0 extends this to queued mailables. (Laravel News)

Before

class WelcomeEmail extends Mailable implements ShouldQueue
{
    public $delay = 30;
}

Now

use Illuminate\Queue\Attributes\Delay;

#[Delay(30)]
class WelcomeEmail extends Mailable implements ShouldQueue
{
}

This improves consistency across the queue ecosystem.


Controller Middleware Attributes Now Inherit

Middleware attributes can now be inherited by child controllers. (New Releases)

Parent Controller

use Illuminate\Routing\Attributes\Middleware;

#[Middleware('auth')]
class AdminController extends Controller
{
}

Child Controller

class UserController extends AdminController
{
    // inherits auth middleware
}

Previously this required repeating configuration.

Now it follows inheritance naturally.

That reduces boilerplate.


Enum Support Expanded Across Managers

Laravel 13.5.0 adds broader enum support across:

  • CacheManager

  • MailManager

  • AuthManager

  • Generic Manager drivers (New Releases)

Example

enum CacheStore: string
{
    case Redis = 'redis';
}

Cache::store(CacheStore::Redis)->put('key', 'value');

Cleaner type-safe configuration.

Better static analysis.

Less stringly-typed code.


Closure Values in updateOrCreate and firstOrNew

This is a subtle but powerful improvement. (New Releases)

Now Supported

User::updateOrCreate(
    ['email' => $email],
    [
        'last_seen' => fn () => now(),
    ]
);

That makes conditional defaults and computed values much cleaner.


Detect Unserializable Cache Values

New hook:

Cache::handleUnserializableClassUsing(...)

Example:

Cache::handleUnserializableClassUsing(
    function ($class) {
        logger("Unserializable: {$class}");
    }
);

Useful for diagnosing broken cached objects. (New Releases)


Fix for Unique Job Lock Ownership

Laravel also fixes an important issue with:

ShouldBeUniqueUntilProcessing

Retries could previously release locks they did not own.

That is fixed in 13.5.0. (New Releases)

That matters for:

  • Job uniqueness

  • Queue safety

  • Distributed workers


Why Laravel 13.5.0 Matters

This release improves:

  • Redis Cluster compatibility

  • Queue infrastructure

  • Attribute-based APIs

  • Type safety with enums

  • Eloquent ergonomics

  • Distributed job reliability

These are not flashy features.

These are production-grade improvements.

And those often matter more.


Should You Upgrade

Upgrade if you use:

  • Redis Cluster

  • AWS ElastiCache Serverless

  • Queued mailables

  • ConcurrencyLimiter

  • Enum-based driver selection

  • Unique queued jobs

For many teams, Redis Cluster support alone justifies upgrading.

Source and Full Changelog

This article is based on the official Laravel Framework v13.5.0 release notes and summarized for developers with examples and commentary.

For the complete release details and all merged changes, see the original sources:

Official GitHub Release
https://github.com/laravel/framework/releases/tag/v13.5.0

Full Changelog Compare View
https://github.com/laravel/framework/compare/v13.4.0...v13.5.0

For production upgrades, always review the full changelog and run your test suite before updating.


Final Thoughts

Laravel 13.5.0 is one of those releases where the changelog may look modest, but the practical impact is significant.

Redis Cluster queue support, ConcurrencyLimiter fixes, Delay attributes for mailables, and expanded enum support make this a strong developer-focused release.

For teams running modern Laravel infrastructure, this is a release worth paying attention to.

Disclaimer: Comments are moderated and may not appear immediately. Please avoid posting spam or offensive content.

// Keep Reading

Related Posts

Laravel 13 New Features, Improvements and What Developers Should Know

18 Mar 2026 2 min read

Laravel 13 has officially been released in March 2026, continuing Laravel’s yearly release cycle with a focus on modern PHP features, cleaner syntax,...

Blaze: Supercharging Blade Component Performance in Laravel

26 Feb 2026 4 min read

Blaze is a new Laravel ecosystem package focused on Blade performance. Learn how it optimizes component rendering, improves speed, and why developers...

Laravel Installer Now Supports Svelte Starter Kit

23 Feb 2026 2 min read

Laravel Starter Kits with Svelte support simplify modern Laravel development. Discover how to install, configure, and build fast reactive applications...

Stay Updated

Get the latest articles, tutorials, and tips delivered straight to your inbox.