Laravel Release Notes

Last updated: Nov 5, 2025

  • Nov 4, 2025
    • Parsed from source:
      Nov 4, 2025
    • Detected by Releasebot:
      Nov 5, 2025
    Laravel logo

    Laravel

    v12.37.0

    Laravel 12.x adds flexible depth for files and directories, richer data handling, and detailed failover mailer and queue insights. Expect performance boosts, improved validation, and background processing enhancements. This release delivers tangible feature updates and fixes.

    12.x

    • [12.x] allow passing custom "depth" to files() and directories() by @browner12 in #57573
    • [12.x] EnumerateValues::value() support objects and return negative values by @rafaelqueiroz in #57570
    • [12.x] Move duplicated logic to separate method to be reusable by @shaedrich in #57564
    • [12.x] Refactor unreleased data_has helper by @rodrigopedra in #57580
    • feat: added detailed about for cache failover driver by @chinmaypurav in #57579
    • [12.x] fix data_has empty check by @rodrigopedra in #57586
    • [12.x] Fix: use trim before check empty string by @alipowerful7 in #57583
    • feat: added detailed about for queue failover driver by @chinmaypurav in #57582
    • Feat: add mailers detail for failover or roundrobin by @chinmaypurav in #57590
    • [12.x] Refactor: remove un use var by @alipowerful7 in #57617
    • [12.x] Factory@insert() by @cosmastech in #57600
    • Fix ScheduleRunCommandTest failure on Windows by using OS-specific success command by @Tina-1300 in #57621
    • [12.x] Add ucwords to Str and Stringable by @braxey in #57581
    • [12.x] improve Connection@listen() docblock by @cosmastech in #57633
    • [12.x] Fix: Correctly fallback to notification's connection/queue when using viaConnections/viaQueues by @aydinfatih in #57625
    • [12.x] Remove unused closure parameters in DatabaseServiceProvider by @sumaiazaman in #57644
    • [12.x] Queue tests for Redis Cluster missing QUEUE_CONNECTION by @vadimonus in #57641
    • refactor: remove unused parameter in ArtisanServiceProvider by @omarchouman in #57658
    • [12.x] Ensure custom validation messages work for the File rule by @jackbayliss in #57656
    • Feature/json schema improvements by @Anticom in #57609
    • Process queue jobs in background (Concurrently::defer()) by @barryvdh in #57648
    • [12.x] ChainedBatch keeps queue and connection of wrapped batch by @vadimonus in #57630

    Other changes

    Original source Report a problem
  • Oct 29, 2025
    • Parsed from source:
      Oct 29, 2025
    • Detected by Releasebot:
      Oct 30, 2025
    Laravel logo

    Laravel

    v12.36.1

    12.x

    • [12.x] EnumerateValues::value() support and return negative values if exists by @rafaelqueiroz in #57566

    • [12.x] always use the operator argument for version_compare() by @browner12 in #57569

    • [12.x] add allDirectories() method to Filesytem by @browner12 in #57565

    • Revert "[12.x] EnumerateValues::value() support and return negative values if exists #54910" by @taylorotwell in #57572

    Original source Report a problem
  • Oct 28, 2025
    • Parsed from source:
      Oct 28, 2025
    • Detected by Releasebot:
      Oct 29, 2025
    Laravel logo

    Laravel

    v12.36.0

    Laravel 12.x brings a batch of updates across Http batching, constructors, annotations, and Eloquent collections. It tightens security with same-origin redirects, refines validation, and fixes cache, URI, and serialization edge cases.

    12.x

    • [12.x] Remove return void from Http\Client\Batch's constructor by @rodrigopedra in #57518
    • [12.x] Namespace file cache lock keys by @faisuc in #57516
    • [12.x] Remove @return tag from constructor by @noir4y in #57536
    • [12.x] Add missing @throws annotation by @AhmedAlaa4611 in #57535
    • [12.x] allow chaining on setters by @browner12 in #57532
    • [12.x] Stop double prefixing S3 filesystem paths by @cosmastech in #57534
    • [12.x] test Uri builder methods by @browner12 in #57549
    • [12.x] Refactor jsonSerialize() method to use match expression by @amirhshokri in #57552
    • [12.x] redirect response enforce same origin by @browner12 in #57533
    • [12.x] Add Eloquent Collection methods: setAppends && withoutAppends by @cosmastech in #57561
    • [12.x] Fix buffer overflow when flushing Redis cache tags with many keys by @faisuc in #57562
    • [12.x] Allow validator message placeholers to be capitalized by @florianraith in #57556
    • Exclude property hooks on return of Model::__sleep() by @rafaelqueiroz in #57557
    • [12.x] Add concurrency control to Http::pool and Http::batch by @WendellAdriel in #57555
    Original source Report a problem
  • Oct 23, 2025
    • Parsed from source:
      Oct 23, 2025
    • Detected by Releasebot:
      Oct 24, 2025
    Laravel logo

    Laravel

    v12.35.1

    Laravel 12.x rolls out a batch of stability and UX tweaks, from session route retention and improved exception view CSS to correct batch ordering and namespace fixes. It also renames NamedScope to Scope, fixes S3 path separators, updates Laravel Learn, enhances queue events, warns on workers, and clarifies cache failover details.

    • Store previous route name in session by @taylorotwell in #57477
    • [12.x] Update CSS in minimal exception view. by @FoksVHox in #57490
    • [12.x] Ensure HTTP batch results are returned in the same order as requested by @jessarcher in #57483
    • [12.x] Correct Response namespace in Batch by @simon-tma in #57481
    • [12.x] Rename NamedScope to Scope by @AhmedAlaa4611 in #57478
    • Fix S3 adapter to use correct path separator and update related tests by @Kleppinger in #57497
    • [12.x] Replace Bootcamp with Laravel Learn by @AhmedAlaa4611 in #57506
    • [12.x] Pass exception to QueueFailedOver event by @jessarcher in #57503
    • [12.x] Add warning when server workers cannot be respected by @timacdonald in #57482
    • [12.x] Emit underlying store name in cache events when using failover by @jessarcher in #57505
    Original source Report a problem
  • Oct 21, 2025
    • Parsed from source:
      Oct 21, 2025
    • Detected by Releasebot:
      Oct 21, 2025
    Laravel logo

    Laravel

    v12.35.0

    Laravel 12.x rolls out a wave of fixes and enhancements across databases, validation, tooling and developer experience. Highlights include Neovim editor support, SQS FIFO queue updates, MariaDB json_value, improved exception references and safer route and dump source handling.

    Release notes

    • [12.x] Fix DB::update() with subqueries is not supported for all databases by @crynobone in #57381
    • [12.x] Ensure custom validation messages work for AnyOf, Can and Enum by @jackbayliss in #57356
    • Added Neovim editor support in ResolvesDumpSource by @cseknowledge in #57392
    • Add clickable file reference for thrown exception by @jasonmccreary in #57400
    • [12.x] Render newlines in query tooltip by @faisuc in #57310
    • [12.x] Add SQS FIFO and fair queue messageGroup() method support by @patrickcarlohickman in #57421
    • [12.x] Use MariaDB idiomatic json_value() by @crishoj in #57417
    • Deferred queue by @taylorotwell in #57428
    • Fix validate integer php doc type annotation by @tei0110 in #57435
    • [12.x] Fix passing countable to Number::format() by @riesjart in #57434
    • [12.x] Update Route::middleware to accept null by @avosalmon in #57436
    • Only replace first basePath occurrence in dump source href by @fritz-c in #57458
    • [12.x] Add missing @throws annotations to Encrypter class by @sumaiazaman in #57451
    • [12.x] Add missing @throws annotations to Database Connection class by @sumaiazaman in #57452
    • [12.x] Test Improvements by @crynobone in #57461
    • Prevent TypeError in validateDigits when attribute value is an array by @elyass-dehghan in #57471
    • Bump vite from 7.1.6 to 7.1.11 in /src/Illuminate/Foundation/resources/exceptions/renderer by @dependabot [bot] in #57460
    • Failover cache by @taylorotwell in #57430
    • Must collect the unparsed event and payload when deferring events by @moshe-autoleadstar in #57453
    Original source Report a problem
  • Oct 9, 2025
    • Parsed from source:
      Oct 9, 2025
    • Detected by Releasebot:
      Oct 20, 2025
    Laravel logo

    Laravel

    v12.34.0

    12.x blooms with editor integrations (Kiro, Fleet, Windsurf, Trae) and extended Vite path customization. It also polishes error views, DOCBLOCKs, and deprecations while tightening auth, session, schedule, and HTTP batch behavior for a smoother dev experience.

    • [12.x] PostgreSQL virtual columns by @tpetry in #57290
    • [12.x] Make Vite asset path generation extendable via inheritance by @daun in #57292
    • [12.x] Improve Str docblocks related to factories by @cosmastech in #57297
    • Add missing waitUntil method to FakeInvokedProcess by @yondifon in #57030
    • Add support for Zed Editor in ResolvesDumpSource by @miguilimzero in #57298
    • [12.x] Remove leftover workaround by @AhmedAlaa4611 in #57306
    • Fix return type order in view function signature by @MadBox-99 in #57304
    • Adds support for Trae IDE in the local exception page by @sajjadhossainshohag in #57300
    • [12.x] Add enum support to Schedule::useCache() by @amirhshokri in #57311
    • [12.x] Fix remaining PHP 8.5 null index array deprecations by @IonBazan in #57308
    • Regenerate session during Auth::login() by @valorin in #57204
    • [12.x] Formatting by @AhmedAlaa4611 in #57321
    • Update text color in minimal error view to ensure better accessibility by @FoksVHox in #57318
    • [12.x] Fix text truncation on syntax-highlighted queries by @avosalmon in #57315
    • [12.x] Fix email rule helper message by @erik-perri in #57323
    • [12.x] Do not assume Str::uuid() returns Stringable by @cosmastech in #57340
    • [12.x] Add missing @throws annotation to Arr by @AhmedAlaa4611 in #57336
    • [12.x] Use FQCN in docblocks by @AhmedAlaa4611 in #57335
    • [12.x] feat: Support custom response without modifying the exception handler by @chuoke in #57342
    • [12.X] add support for windsurf IDE in ResolvesDumpSource by @Sajid-al-islam in #57359
    • [12.x] Expand single-line array into multiline by @AhmedAlaa4611 in #57350
    • [12.x] Added Kiro editor support in ResolvesDumpSource by @OmarFaruk-0x01 in #57363
    • [12.x] fix schedule list cli format in multibye locale by @jamessa in #57367
    • Prototype failover queue by @taylorotwell in #57341
    • Add support for Fleet editor in ResolvesDumpSource by @Rakib01 in #57377
    • Allow closures when calling throw_if by @chrispage1 in #57349
    • [12.x] Add defer method to HTTP batch by @WendellAdriel in #57387
    • [12.x] Supports PHPUnit 12.4 by @crynobone in #57388
    • [12.x] Http::batch - fix issue that non valid URL not triggering catch hook by @WendellAdriel in #57386
    Original source Report a problem
  • Oct 6, 2025
    • Parsed from source:
      Oct 6, 2025
    • Detected by Releasebot:
      Oct 20, 2025
    Laravel logo

    Laravel

    v12.33.0

    Shipped 12.x patch notes with broad fixes and refinements across queries, docs, tests, and HTTP client. Highlights include orderByRaw query fixes, docblock corrections, config:cache errors, session/cookie alignment, and improved BroadcastManager and test stability.

    Release Notes

    • Fix compiling queries that use orderByRaw with expressions by @LukeTowers in #57228
    • [12.x] Narrow type after Str::is*(...) check by @axlon in #57230
    • [12.x] Fix invalid docblock by @tm1000 in #57240
    • [12.x] Refactor switch to match by @amirhshokri in #57236
    • [12.x] Refactor switch to match by @alipowerful7 in #57237
    • [12.x] Fix rounded issue in exception frame component by @AhmedAlaa4611 in #57239
    • [12.x] Ensure calling job within a group works as expected by @jackbayliss in #57224
    • fix: remove duplicated word in Str::apa method by @balboacodes in #57254
    • refactor: add |null in docblock by @alipowerful7 in #57253
    • [12.x] Improve php artisan config:cache and php artisan optimize error messages for non-serializable values by @mathiasgrimm in #57249
    • [12.x] Ensure cookie lifetime matches session lifetime in StartSession middleware by @michaelcontento in #57266
    • Run tests on PostgreSQL version 18 by @JurianArie in #57232
    • [12x.] reduce repeated inserts in tests by @cosmastech in #57273
    • [12.x] Fix using pushIf blade directive with complex conditions (#57264) by @hosni in #57274
    • [12.x] Add Stringable::doesntContain() to match API symmetry by @michaelcontento in #57279
    • [12.x] Improve BroadcastManager error messages when trying to get a Broadcaster by @mathiasgrimm in #57275
    • [12.x] HTTP Client: add mergeUrlParameters() to combine URL parameters without overwriting by @leek in #57282
    Original source Report a problem
  • Sep 29, 2025
    • Parsed from source:
      Sep 29, 2025
    • Detected by Releasebot:
      Oct 20, 2025
    Laravel logo

    Laravel

    v11.46.1

    • [11.x] Fixes incorrectly serializing virtual properties (backport) by @DarkGhostHunter in #57201
    • Revert "[11.x] Fixes incorrectly serializing virtual properties (backport)" by @taylorotwell in #57203
    Original source Report a problem
  • Sep 29, 2025
    • Parsed from source:
      Sep 29, 2025
    • Detected by Releasebot:
      Oct 20, 2025
    Laravel logo

    Laravel

    v12.32.1

    Release notes

    • [13.x] Fix scopedBy attribute not following inheritance chain by @Muffinman in #57213
    • [12.x] Fix AWS S3 adapter's constructor not allowing decorated adapter instances by @daniser in #57217
    Original source Report a problem
  • Sep 29, 2025
    • Parsed from source:
      Sep 29, 2025
    • Detected by Releasebot:
      Oct 20, 2025
    Laravel logo

    Laravel

    v12.32.3

    [12.x] Define LARAVEL_START if not already defined by @cosmastech in #57222

    [12.x] Clean up redundant type hints in docblocks by @AhmedAlaa4611 in #57219

    Original source Report a problem

Related vendors