Laravel19 Apr 20263 min readFaisal Ahmed

Laravel Framework 13.5.0 Release Overview and Key Developer Improvements

laravel-13-5-redis-cluster-support

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.

Leave a comment

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

// Keep Reading

Related Posts

Laravel MCP 1.0 Released: Stateless Servers, Tool Search and Cache Hints

25 Sept 2026•5 min read

Laravel MCP 1.0 is the first stable release of Laravel's package for building Model Context Protocol servers. It moves to MCP protocol 2026-07-28 with...

Laravel 13.30 New Features: chunkBy, Storage Security Fix and More

23 Sept 2026•3 min read

Laravel 13.30 adds chunkBy to collections, closes a path traversal gap in Storage::path(), shows why queue workers stop, lets you trim DevCommands and...

Laravel 13 New Features, Improvements and What Developers Should Know

18 Mar 2026•3 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,...

Stay Updated

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