Laravel Release Notes
371 release notes curated from 4 sources by the Releasebot Team. Last updated: Sep 8, 2026
Laravel Products
- Sep 8, 2026
- Date parsed from source:Sep 8, 2026
- First seen by Releasebot:Sep 8, 2026
v13.31.0
Laravel ships 13.x and 12.x fixes and improvements across queues, Redis, Eloquent, Vite, routing, HTTP client, mail, sessions, and testing, including new chaperone support, better type handling, cluster-safe Redis queues, and several bug fixes.
[12.x]
Ensure password hash matches stored cookie before authenticating the user by @crynobone in #61386
Fix TypeError in userFromRecaller() when the recaller matches no user by @lazerg in #61397
[13.x]
Add totalSize method to Queue by @jackbayliss in #61373
Merge branch '12.x' into 13.x by @crynobone in #61399
Restore the container instance after route:cache boots a fresh application by @lazerg in #61405
Include connection and queue on WorkerStopping when worker is killed by @jackbayliss in #61408
Fix lazy() and lazyById() ignoring limit() and offset() by @xurshudyan in #61402
JobInterrupted event by @jackbayliss in #61412
Make the Redis queue driver cluster-safe (bulk() node-less MULTI; allQueueNames() uses KEYS) by @Orrison in #61198
feat: add chaperone support for BelongsToMany pivot models by @calebdw in #61152
Dedupe common test fixtures by @jasonmccreary in #61422
feat: improve higher order proxy generic types by @calebdw in #61418
Apply fixes from StyleCI by @taylorotwell in #61427
Add once assertions to the mail and notification fakes by @talaridisTh in #61415
Let Monolog handle deprecation exceptions by @sysdev34-wq in #61414
Default memoryExceededExitCode for Cloud by @jackbayliss in #61430
Fix context not being propagated to concurrent processes by @newtonjob in #61419
Remove the unused Request import from the JSON:API resource stub by @Bosun18 in #61434
Memory leak fix in Http Client by @skr4dan in #61438
Fix SelfBuilding build stack cleanup after exceptions by @emrebalasar in #61454
defer all logic to the dedicated rule by @browner12 in #61445
Wrap the closure return type in withFreshQueryLog() by @SanderMuller in #61444
Fix assertJsonMissingPath() ignoring wildcards by @xurshudyan in #61441
Resolve the UsePolicy attribute from parent classes by @xurshudyan in #61439
Resolve the UseEloquentBuilder attribute from parent classes by @xurshudyan in #61440
Fix parameter docblocks that contradict the native signature by @dfinchenko in #61457
Bump softprops/action-gh-release from 3.0.2 to 3.0.3 in the github-actions group by @dependabot[bot] in #61468
Fix RateLimited job middleware hitting limits that did not block the job by @xurshudyan in #61449
Add devServerUrl() to Vite by @ramonmalcolm10 in #61465
Retry phpredis commands when a connection reset surfaces as a warning by @Orrison in #61462
Fix callbacks deferred from within a deferred callback by @newtonjob in #61431
Propagate command_retries to phpredis cluster connections by @Orrison in #61460
Qualify soft delete column with the query's table alias by @arunarw in #61456
Keep Eloquent on the direct connection during migrations by @danielebarbaro in #61435
Apply fixes from StyleCI by @taylorotwell in #61470
Fix Class Illuminate\Session\ArraySessionHandler implementing SessionHandlerInterface is missing the create_sid() method which will be required in PHP 9.0 by @crynobone in #61469
Fix route url generation under certain circumstances by @taylorotwell in #61475
Fix message ID and header persistence on ResendTransport by @saurabhsharma2u in #61476
Fix wherePivot() closure scope being ignored in pivot table operations by @iz-ahmad in #61488
Original source - Sep 8, 2026
- Date parsed from source:Sep 8, 2026
- First seen by Releasebot:Sep 8, 2026
v12.69.2
Laravel updates Cloud default memoryExceededExitCode and tightens return types in withFreshQueryLog and askWithCompletion.
[12.x] Default memoryExceededExitCode for Cloud by @jackbayliss in #61432
Wrap the closure return type in withFreshQueryLog() by @SanderMuller in #61458
Wrap the autocompleter callback return type in askWithCompletion() by @SanderMuller in #61487
Original source All of your release notes in one feed
Join Releasebot and get updates from Laravel and hundreds of other software products.
- Sep 1, 2026
- Date parsed from source:Sep 1, 2026
- First seen by Releasebot:Sep 2, 2026
v13.30.1
Laravel adds WorkerStopping connection and queue, Eloquent insertOrIgnoreReturning, vector index drops, and an SQL Server fix.
[13.x] Add connection and queue to WorkerStopping by @jackbayliss in #61387
[13.x] Add insertOrIgnoreReturning() to the Eloquent builder passthru by @xurshudyan in #61393
[13.x] Add dropVectorIndex() to the schema blueprint by @xurshudyan in #61391
[13.x] Fix limit() being ignored on update() for SQL Server by @xurshudyan in #61394
[13.x] Prevent orphaned Redis tagged cache entries by @drewmt in #61385
Original source - Sep 1, 2026
- Date parsed from source:Sep 1, 2026
- First seen by Releasebot:Sep 2, 2026
v12.69.1
Laravel fixes a TypeError in userFromRecaller() when the recaller matches no user.
[12.x] Fix TypeError in userFromRecaller() when the recaller matches no user by @lazerg in #61397
Original source - Sep 1, 2026
- Date parsed from source:Sep 1, 2026
- First seen by Releasebot:Sep 1, 2026
v13.30.0
Laravel ships a broad framework update with new queue, database, storage, cloud, and collection improvements, plus fixes for resource loading, route caching, exception page behavior, and command handling. It also adds Microsoft SQL Server DSN support and several developer-focused refinements.
[12.x] Backport #60908: Avoid quadratic wildcard rule expansion by @matteo-palazzo in #61232
Fix resource loading by @taylorotwell in #61323
[13.x] Output the worker stop reason in queue:work by @jackbayliss in #61339
Fix incorrect $startTime type in Worker::stopIfNecessary docblock by @il-m-tomita in #61347
[13.x] Ability to opt out of vendor/default commands in DevCommands by @jackbayliss in #61344
[13.x] Confine Storage::path() to the configured disk root by @KIKOmanasijev in #61343
[13.x] Support Microsoft SQL Server DSN connection strings by @HenkPoley in #61341
[13.x] Restore the facade application after route:cache boots a fresh application by @reiarseni in #61346
[13.x] Gracefully handle missing param value or strings with request clamps by @kylemilloy in #61355
[13.x] Restore default database connection when seeding fails by @sayful1411 in #61354
[13.x] Cloud enhancements by @timacdonald in #61360
[13.x] Allow retrieving command by name without resolving all commands by @timacdonald in #61361
[13.x] Expose methods by @timacdonald in #61362
[13.x] Add basic test for query explain by @imanghafoori1 in #61363
[13.x] Add totalXSize methods to Cloud Queue by @jackbayliss in #61352
[13.x] Add chunkBy to collections by @JosephSilber in #61357
[13.x] spl_object_id over hash by @jackbayliss in #61372
[13.x] Add createPayloadUsing directly to the queue manager by @jackbayliss in #61367
[13.x] Set visibility on files that only exist on a read-through disk's fallback by @sulimanbenhalim in #61375
[12.x] Disable html by default on Laravel exception page tooltip by @crynobone in #61381
Original source Similar to Laravel with recent updates:
- xAI release notes244 release notes · Latest Sep 9, 2026
- Anthropic release notes808 release notes · Latest Sep 11, 2026
- Notion release notes182 release notes · Latest Sep 10, 2026
- OpenAI release notes1011 release notes · Latest Sep 11, 2026
- Cursor release notes132 release notes · Latest Sep 10, 2026
- Perplexity release notes30 release notes · Latest Aug 24, 2026
- Sep 1, 2026
- Date parsed from source:Sep 1, 2026
- First seen by Releasebot:Sep 1, 2026
v12.69.0
Laravel disables HTML in exception page tooltips and verifies password hash matches stored cookies before authentication.
[12.x] Disable html by default on Laravel exception page tooltip by @crynobone in #61381
[12.x] Ensure password hash matches stored cookie before authenticating the user by @crynobone in #61386
Original source - Aug 31, 2026
- Date parsed from source:Aug 31, 2026
- First seen by Releasebot:Sep 1, 2026
Laravel Framework 13.x - A Laravel Cloud Facade for Managed Queues
Laravel adds a Cloud facade for runtime inspection of Laravel Cloud hosting, managed queues, and queue access.
Pull request by @jackbayliss
Laravel now provides an
Original sourceIlluminate\Support\Facades\Cloudfacade for inspecting Laravel Cloud at runtime.Cloud::hosted()determines whether the application is hosted on Laravel Cloud,Cloud::usesManagedQueues()detects the managed queue connection, andCloud::queue()gives access to that connection when configured. - Aug 31, 2026
- Date parsed from source:Aug 31, 2026
- First seen by Releasebot:Sep 1, 2026
Laravel Framework 13.x - Read-Through Filesystems
Laravel adds a read-through filesystem driver for gradual disk migration with fallback reads and automatic copying.
Pull request by @taylorotwell
Laravel now includes a read-through filesystem driver for gradually migrating files between disks. It checks the primary disk first; when a file exists only on the fallback disk, Laravel returns it and copies it to the primary disk for future requests. Writes and directory listings continue to target the primary disk, while streamed reads are supported without loading the entire file into memory.
Original source'assets' => [ 'driver' => 'read-through', 'primary' => 'r2', 'fallback' => 'legacy-s3', ], - Aug 31, 2026
- Date parsed from source:Aug 31, 2026
- First seen by Releasebot:Sep 1, 2026
Laravel Framework 13.x - Portable Eloquent Vector Casts
Laravel adds the AsVector Eloquent cast for working with vector columns as arrays of floats.
Pull request by @eas4ai
Laravel now provides the AsVector Eloquent cast for working with vector columns as arrays of floats. The cast handles MariaDB's binary vector representation as well as PostgreSQL-compatible text values, accepts arrays and Arrayable objects when storing vectors, and correctly converts query bindings for MariaDB vector distance functions.
Original sourceuse Illuminate\Database\Eloquent\Casts\AsVector; class Document extends Model { protected $casts = [ 'embedding' => AsVector::class, ]; } - Aug 31, 2026
- Date parsed from source:Aug 31, 2026
- First seen by Releasebot:Sep 1, 2026
Laravel Framework 13.x - MariaDB Vector Distance Queries
Laravel adds MariaDB support for vector query methods, bringing native vector search and distance ordering to the expressive API.
Pull request by @Rhaima96
Laravel's vector query methods now support MariaDB's native vector capabilities. Methods such as whereVectorSimilarTo, whereVectorDistanceLessThan, orderByVectorDistance, and selectVectorDistance compile to MariaDB's vector distance functions, bringing the same expressive query API previously available for PostgreSQL to supported MariaDB releases.
Original source$documents = Document::query() ->whereVectorSimilarTo('embedding', $queryEmbedding) ->orderByVectorDistance('embedding', $queryEmbedding) ->get(); - Aug 31, 2026
- Date parsed from source:Aug 31, 2026
- First seen by Releasebot:Sep 1, 2026
Laravel Framework 13.x - Automatically Retry Safe Redis Commands
Laravel now auto-reconnects PhpRedis and retries safe Redis commands after transient failures, with configurable extra attempts.
Pull request by @taylorotwell
PhpRedis connections now automatically reconnect and retry safe commands following transient connection failures. Laravel retries a curated set of read-only commands and option-free SET operations once by default, while avoiding automatic retries for non-idempotent writes. Applications that need additional attempts may configure them with the REDIS_COMMAND_RETRIES environment variable.
Original source - Aug 31, 2026
- Date parsed from source:Aug 31, 2026
- First seen by Releasebot:Sep 1, 2026
Laravel Framework 13.x - Debounce Queued Event Listeners
Laravel adds #[DebounceFor] support for queued event listeners, letting repeated events for the same resource collapse into the latest listener run. It also supports maxWait to prevent indefinite delays, making bursty updates like search indexing easier to manage.
Pull request by @stevebauman
The #[DebounceFor] attribute can now be applied to queued event listeners. When several events arrive for the same resource during the debounce period, Laravel processes only the most recently dispatched listener, making it a natural fit for work such as updating a product search index after a burst of changes. A maxWait value can ensure a continuous stream of events does not defer the listener indefinitely.
Original sourceuse Illuminate\Contracts\Queue\ShouldQueue; use Illuminate\Queue\Attributes\DebounceFor; #[DebounceFor(30, maxWait: 120)] class UpdateProductSearchIndex implements ShouldQueue { public function debounceId(ProductUpdated $event): string { return (string) $event->product->getKey(); } } - Aug 31, 2026
- Date parsed from source:Aug 31, 2026
- First seen by Releasebot:Sep 1, 2026
Scout - Pause Every Queue at Once
Laravel adds queue:pause --all and queue:resume --all to pause or resume every queue and connection from one place.
Pull request by @jackbayliss
Laravel's queue commands now support php artisan queue:pause --all and queue:resume --all, allowing applications to pause or resume work across every connection and queue from one place. Global pauses are independent from per-queue pauses, and the new QueuesPaused and QueuesResumed events make it possible to observe these operations.
Original source - Aug 31, 2026
- Date parsed from source:Aug 31, 2026
- First seen by Releasebot:Sep 1, 2026
Scout - Add Turbopuffer and Database Semantic Search
Laravel adds a Turbopuffer engine to Scout with batched indexing, automatic namespace creation, weighted BM25 full-text search, filtering, and vector distance metadata. It also brings semantic and hybrid search to Scout's database engine with embedding support through the familiar builder API.
Pull request by @taylorotwell
Laravel Scout now includes a Turbopuffer engine with batched indexing, automatic namespace creation, weighted BM25 full-text search, filtering, and vector distance metadata. It uses Laravel's HTTP client directly, so no additional Turbopuffer PHP SDK is required.
This release also introduces semantic and hybrid search support for Scout's database engine. Applications can use generated or precomputed embeddings through the familiar Scout builder API, with support for vector search, text search, filters, pagination, and configurable search weights.
Original source$documents = Document::search('ocean climate') ->semantic() ->where('published', true) ->get(); - Aug 31, 2026
- Date parsed from source:Aug 31, 2026
- First seen by Releasebot:Sep 1, 2026
AI - Semantic and Hybrid Meilisearch Queries
Laravel adds Scout Meilisearch semantic and hybrid search with embedder support and vector-based querying.
Pull request by @taylorotwell
Scout's Meilisearch engine now supports semantic and hybrid search. Configure an embedder and model embedding settings, then use Scout's semantic() or hybrid() builder methods to search with generated or precomputed vectors. Laravel AI is used to generate embeddings when needed, while applications may provide their own vectors for indexing and querying.
Original source$results = Article::search('a guide to queues') ->hybrid(textWeight: 1, semanticWeight: 2) ->get();
Curated by the Releasebot team
Releasebot is an aggregator of official release notes from hundreds of software vendors and thousands of sources.
Our editorial process involves the manual review and audit of release notes procured with the help of automated systems.