Update dependency laravel/framework to v13 #107

Open
professeur-chen wants to merge 1 commit from renovate/laravel-framework-13.x into trunk
Collaborator

This PR contains the following updates:

Package Change Age Confidence
laravel/framework (source) ^12.0^13.0 age confidence

Release Notes

laravel/framework (laravel/framework)

v13.2.0

Compare Source

v13.1.1

Compare Source

v13.1.0

Compare Source

v13.0.0

Compare Source

v12.56.0

Compare Source

v12.55.1

Compare Source

v12.55.0

Compare Source

v12.54.1

Compare Source

v12.54.0

Compare Source

v12.53.0

Compare Source

v12.52.0

Compare Source

v12.51.0

Compare Source

v12.50.0

Compare Source

v12.49.0

Compare Source

v12.48.1

Compare Source

v12.48.0

Compare Source

v12.47.0

Compare Source

v12.46.0

Compare Source

v12.45.2

Compare Source

  • [12.x] Feature: allow UnitEnum in has() method of Gate class by @​webard in #​58310
  • [12.x] Fix Validator::appendRules() with pipe-separated rule strings by @​leo108 in #​58304
  • [12.x] Fix calling toArray() on AnonymousResourceCollection returns an array of resources by @​crynobone in #​58302

v12.45.1

Compare Source

  • [12.x] Fix ResourceCollection usage when used with an array instead of Model collection by @​crynobone in #​58299

v12.45.0

Compare Source

v12.44.0

Compare Source

v12.43.1

Compare Source

v12.43.0

Compare Source

v12.42.0

Compare Source

v12.41.1

Compare Source

v12.41.0

Compare Source

v12.40.2

Compare Source

v12.40.1

Compare Source

v12.40.0

Compare Source

v12.39.0

Compare Source

v12.38.1

Compare Source

v12.38.0

Compare Source

v12.37.0

Compare Source

v12.36.1

Compare Source

v12.36.0

Compare Source

v12.35.1

Compare Source

v12.35.0

Compare Source


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [laravel/framework](https://laravel.com) ([source](https://github.com/laravel/framework)) | `^12.0` → `^13.0` | ![age](https://developer.mend.io/api/mc/badges/age/packagist/laravel%2fframework/13.2.0?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/packagist/laravel%2fframework/12.34.0/13.2.0?slim=true) | --- ### Release Notes <details> <summary>laravel/framework (laravel/framework)</summary> ### [`v13.2.0`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v1320---2026-03-24) [Compare Source](https://github.com/laravel/framework/compare/v13.1.1...v13.2.0) - feat(queue): support enums in `#[Queue]` and `#[Connection]` by [@&#8203;innocenzi](https://github.com/innocenzi) in [#&#8203;59278](https://github.com/laravel/framework/pull/59278) - Improve raw SQL binding substitution performance by [@&#8203;gufoe](https://github.com/gufoe) in [#&#8203;59277](https://github.com/laravel/framework/pull/59277) - \[13.x] fix: add missing negate for SeeInHtml assertion by [@&#8203;jesperbeisner](https://github.com/jesperbeisner) in [#&#8203;59303](https://github.com/laravel/framework/pull/59303) - \[13.x] Allow for passing enums to attributes by [@&#8203;riesjart](https://github.com/riesjart) in [#&#8203;59297](https://github.com/laravel/framework/pull/59297) - \[13.x] Add releaseOnSignal param to withoutOverlapping by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;59298](https://github.com/laravel/framework/pull/59298) - Add symmetrical, expressive attributes by [@&#8203;jasonmccreary](https://github.com/jasonmccreary) in [#&#8203;59284](https://github.com/laravel/framework/pull/59284) - \[13.x] Fix LazyPromise::wait() signature compatibility with Guzzle's PromiseInterface by [@&#8203;shavonn](https://github.com/shavonn) in [#&#8203;59301](https://github.com/laravel/framework/pull/59301) - \[13.x] `schedule:list` display expression in the correct timezone by [@&#8203;xiCO2k](https://github.com/xiCO2k) in [#&#8203;59286](https://github.com/laravel/framework/pull/59286) - Handle exceptions in eventStream to prevent fatal error by [@&#8203;WendellAdriel](https://github.com/WendellAdriel) in [#&#8203;59292](https://github.com/laravel/framework/pull/59292) - \[13.x] Ensure connectUsing works with UnitEnum / FileManager drive docblock by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;59306](https://github.com/laravel/framework/pull/59306) - \[13.x] Include columns and index in UniqueConstraintViolationException by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;59299](https://github.com/laravel/framework/pull/59299) - \[13.x] Add TimedOut worker stop reason by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;59310](https://github.com/laravel/framework/pull/59310) - Fix Table attribute incrementing not working for Pivot models by [@&#8203;sadique-cws](https://github.com/sadique-cws) in [#&#8203;59336](https://github.com/laravel/framework/pull/59336) - \[13.x] Ensure ScopedBy Attribute works with inheritance by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;59332](https://github.com/laravel/framework/pull/59332) - Modify sum callback to include item key by [@&#8203;mathieutu](https://github.com/mathieutu) in [#&#8203;59322](https://github.com/laravel/framework/pull/59322) - \[13.x] Bound error page query listener to prevent memory bloat in Octane by [@&#8203;JoshSalway](https://github.com/JoshSalway) in [#&#8203;59309](https://github.com/laravel/framework/pull/59309) - \[13.x] Allow opting out of worker Job exception reporting by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;59308](https://github.com/laravel/framework/pull/59308) - \[13.x] Adds mobile safe-area-inset support to exception renderer by [@&#8203;dr-codswallop](https://github.com/dr-codswallop) in [#&#8203;59341](https://github.com/laravel/framework/pull/59341) - \[13.x] Allow passing multiple arrays to has factory method by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;59343](https://github.com/laravel/framework/pull/59343) - \[13.x] Allow Backoff Attribute to be variadic by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;59354](https://github.com/laravel/framework/pull/59354) ### [`v13.1.1`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v1311---2026-03-18) [Compare Source](https://github.com/laravel/framework/compare/v13.1.0...v13.1.1) - Break queue dependency by [@&#8203;taylorotwell](https://github.com/taylorotwell) in [#&#8203;59275](https://github.com/laravel/framework/pull/59275) ### [`v13.1.0`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v1310---2026-03-18) [Compare Source](https://github.com/laravel/framework/compare/v13.0.0...v13.1.0) - \[12.x] Correct truncate exceptions at by [@&#8203;bretto36](https://github.com/bretto36) in [#&#8203;59239](https://github.com/laravel/framework/pull/59239) - \[13.x] Remove useless \Mockery::close() by [@&#8203;lucasmichot](https://github.com/lucasmichot) in [#&#8203;59253](https://github.com/laravel/framework/pull/59253) - Fix: Batch::add() wipes queue assignment on first job in array chains by [@&#8203;ProjektGopher](https://github.com/ProjektGopher) in [#&#8203;59233](https://github.com/laravel/framework/pull/59233) - Improvements for asserting HTML in text by [@&#8203;jasonmccreary](https://github.com/jasonmccreary) in [#&#8203;59161](https://github.com/laravel/framework/pull/59161) - \[13.x] Use Carbon::now() instead of now() helper by [@&#8203;lucasmichot](https://github.com/lucasmichot) in [#&#8203;59252](https://github.com/laravel/framework/pull/59252) - \[13.x] Fix null broadcaster deprecation warning in PHP 8.5 by [@&#8203;mortenscheel](https://github.com/mortenscheel) in [#&#8203;59269](https://github.com/laravel/framework/pull/59269) - \[12.x] Fix float pluralization in trans\_choice() by [@&#8203;JulianGlueck](https://github.com/JulianGlueck) in [#&#8203;59268](https://github.com/laravel/framework/pull/59268) - \[12.x] Fix tests on PHP 8.5 by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59251](https://github.com/laravel/framework/pull/59251) - \[13.x] Add toString to Uri by [@&#8203;dwightwatson](https://github.com/dwightwatson) in [#&#8203;59259](https://github.com/laravel/framework/pull/59259) ### [`v13.0.0`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v1300---2026-03-17) [Compare Source](https://github.com/laravel/framework/compare/v12.56.0...v13.0.0) - Revert "\[12.x] Query builder PDO fetch modes" by [@&#8203;taylorotwell](https://github.com/taylorotwell) in [#&#8203;54709](https://github.com/laravel/framework/pull/54709) - \[13.x] Prepare branch alias for Laravel 13 by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;54701](https://github.com/laravel/framework/pull/54701) - \[12.x] Query builder PDO fetch modes + columns fix by [@&#8203;bert-w](https://github.com/bert-w) in [#&#8203;54734](https://github.com/laravel/framework/pull/54734) - \[13.x] Fix Tests/CI environments by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;54760](https://github.com/laravel/framework/pull/54760) - \[13.x] Requires PHP 8.3 as minimum version by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;54763](https://github.com/laravel/framework/pull/54763) - \[13.x] Add missing parameters to `Response` methods `throw()` and `throwIf()` by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;54798](https://github.com/laravel/framework/pull/54798) - \[13.x] Fix scope removal in nested where conditions by [@&#8203;willrowe](https://github.com/willrowe) in [#&#8203;54816](https://github.com/laravel/framework/pull/54816) - \[13.x] Remove function existence checks by [@&#8203;xurshudyan](https://github.com/xurshudyan) in [#&#8203;54876](https://github.com/laravel/framework/pull/54876) - \[13.x] Removed unneeded default argument by [@&#8203;AndrewMast](https://github.com/AndrewMast) in [#&#8203;54900](https://github.com/laravel/framework/pull/54900) - \[13.x] Fix unresolved merge conflict in Concurrency composer.json by [@&#8203;jnoordsij](https://github.com/jnoordsij) in [#&#8203;55233](https://github.com/laravel/framework/pull/55233) - \[13.x] Fixes merge conflict by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;55294](https://github.com/laravel/framework/pull/55294) - \[13.x] Error exit code for clear command by [@&#8203;mbardelmeijer](https://github.com/mbardelmeijer) in [#&#8203;55355](https://github.com/laravel/framework/pull/55355) - \[13.x] Add #\[\Override] to the BatchFake class methods by [@&#8203;imanghafoori1](https://github.com/imanghafoori1) in [#&#8203;55358](https://github.com/laravel/framework/pull/55358) - \[13.x] PDO Fetch modes by [@&#8203;bert-w](https://github.com/bert-w) in [#&#8203;55394](https://github.com/laravel/framework/pull/55394) - Allow Listeners to dynamically specify deleteWhenMissingModels by [@&#8203;L3o-pold](https://github.com/L3o-pold) in [#&#8203;55508](https://github.com/laravel/framework/pull/55508) - \[13.x] Do not allow new model instances to be created during boot by [@&#8203;willrowe](https://github.com/willrowe) in [#&#8203;55685](https://github.com/laravel/framework/pull/55685) - Fix typo in `Blueprint`: `datetime` => `dateTime` by [@&#8203;TheJoeSchr](https://github.com/TheJoeSchr) in [#&#8203;55859](https://github.com/laravel/framework/pull/55859) - Feature: add support straight join in mysql by [@&#8203;jferdi24](https://github.com/jferdi24) in [#&#8203;55786](https://github.com/laravel/framework/pull/55786) - \[13.x] Register subdomain routes before routes that are not linked to a domain by [@&#8203;gdebrauwer](https://github.com/gdebrauwer) in [#&#8203;55921](https://github.com/laravel/framework/pull/55921) - \[13.x] Supports Symfony 7.4 & 8.0 by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;56029](https://github.com/laravel/framework/pull/56029) - \[13.x] Change to hyphenate prefixes by [@&#8203;u01jmg3](https://github.com/u01jmg3) in [#&#8203;56172](https://github.com/laravel/framework/pull/56172) - \[13.x] Use exception object in JobAttempted event by [@&#8203;bert-w](https://github.com/bert-w) in [#&#8203;56148](https://github.com/laravel/framework/pull/56148) - \[13.x] remove superfluous element by [@&#8203;browner12](https://github.com/browner12) in [#&#8203;56303](https://github.com/laravel/framework/pull/56303) - Add eventStream signature to ResponseFactory contract by [@&#8203;csfh](https://github.com/csfh) in [#&#8203;56306](https://github.com/laravel/framework/pull/56306) - fix: align ResponseFactory::eventStream signature with interface by [@&#8203;KIKOmanasijev](https://github.com/KIKOmanasijev) in [#&#8203;56484](https://github.com/laravel/framework/pull/56484) - \[13.x] `Cache::touch()` & `Store::touch()` for TTL Extension by [@&#8203;yitzwillroth](https://github.com/yitzwillroth) in [#&#8203;55954](https://github.com/laravel/framework/pull/55954) - \[13.x] Make QueueBusy event consistent with other queue events by [@&#8203;AhmedAlaa4611](https://github.com/AhmedAlaa4611) in [#&#8203;56673](https://github.com/laravel/framework/pull/56673) - \[13.x] use clearer pagination view names by [@&#8203;browner12](https://github.com/browner12) in [#&#8203;56307](https://github.com/laravel/framework/pull/56307) - \[13.x] Update `countBy` docblock in `Enumerable` interface to allow for enum callback by [@&#8203;jnoordsij](https://github.com/jnoordsij) in [#&#8203;56897](https://github.com/laravel/framework/pull/56897) - \[13.x] Generate plural morph pivot table name by [@&#8203;willrowe](https://github.com/willrowe) in [#&#8203;56832](https://github.com/laravel/framework/pull/56832) - \[13.x] Resolve Symfony Console `add()` method deprecation by [@&#8203;KIKOmanasijev](https://github.com/KIKOmanasijev) in [#&#8203;56488](https://github.com/laravel/framework/pull/56488) - \[13.x] Add command method to contract by [@&#8203;rodrigopedra](https://github.com/rodrigopedra) in [#&#8203;56978](https://github.com/laravel/framework/pull/56978) - Refactor: replace strpos check with str\_contains for clarity by [@&#8203;arshidkv12](https://github.com/arshidkv12) in [#&#8203;57042](https://github.com/laravel/framework/pull/57042) - Remove unnecessary parameters by [@&#8203;arshidkv12](https://github.com/arshidkv12) in [#&#8203;57047](https://github.com/laravel/framework/pull/57047) - \[README.md] change laravel bootcamp to laravel learn by [@&#8203;MoZayedSaeid](https://github.com/MoZayedSaeid) in [#&#8203;57176](https://github.com/laravel/framework/pull/57176) - \[13.x] Resolve issues with tests by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;57258](https://github.com/laravel/framework/pull/57258) - \[13.x] Bind manager instances to custom driver closures by [@&#8203;daniser](https://github.com/daniser) in [#&#8203;57173](https://github.com/laravel/framework/pull/57173) - \[13.x] Compile full DELETE with JOIN including ORDER BY and LIMIT in MySQL grammar by [@&#8203;tegos](https://github.com/tegos) in [#&#8203;57196](https://github.com/laravel/framework/pull/57196) - \[13.x] Flush `Str` factories when tearing down test case by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57296](https://github.com/laravel/framework/pull/57296) - \[13.x] Update reset password notification subject by [@&#8203;ganyicz](https://github.com/ganyicz) in [#&#8203;57882](https://github.com/laravel/framework/pull/57882) - \[13.x] Update verification email subject capitalization by [@&#8203;ganyicz](https://github.com/ganyicz) in [#&#8203;57884](https://github.com/laravel/framework/pull/57884) - \[13.x] Simplify preg\_replace\_array callback by removing unnecessary foreach loop by [@&#8203;sumaiazaman](https://github.com/sumaiazaman) in [#&#8203;57924](https://github.com/laravel/framework/pull/57924) - \[13.x] Fix changes from Laravel 12 by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;57919](https://github.com/laravel/framework/pull/57919) - \[13.x] Default `PendingRequest@pool()` to use 2 for concurrency by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57972](https://github.com/laravel/framework/pull/57972) - \[13.x] Copy `Symfony\Component\HttpFoundation\Request::get()` functionality to avoid breaking changes. by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58081](https://github.com/laravel/framework/pull/58081) - \[13.x] Defer registering schedule registered using `ApplicationBuilder::withScheduling()` by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58160](https://github.com/laravel/framework/pull/58160) - \[13.x] Return data object from `ModelInspector` to make `show:model` more flexible by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58230](https://github.com/laravel/framework/pull/58230) - \[13.x] Add ability to default queue by class type by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58094](https://github.com/laravel/framework/pull/58094) - \[13.x] Add reason to WorkerStopping event by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58341](https://github.com/laravel/framework/pull/58341) - \[13.x] Add starting to Monitor Contract by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58399](https://github.com/laravel/framework/pull/58399) - \[13.x] add dispatchAfterResponse to the Dispatcher Contract by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58428](https://github.com/laravel/framework/pull/58428) - \[13.x] Add origin verification to request forgery protection by [@&#8203;benbjurstrom](https://github.com/benbjurstrom) in [#&#8203;58400](https://github.com/laravel/framework/pull/58400) - \[13.x] Improve `Enumerable` interface docblock types by [@&#8203;jnoordsij](https://github.com/jnoordsij) in [#&#8203;58181](https://github.com/laravel/framework/pull/58181) - Add missing chain method to interface by [@&#8203;Jeroen-G](https://github.com/Jeroen-G) in [#&#8203;58429](https://github.com/laravel/framework/pull/58429) - \[13.x] Use unescaped unicode in `Js` support class by default by [@&#8203;jnoordsij](https://github.com/jnoordsij) in [#&#8203;58471](https://github.com/laravel/framework/pull/58471) - \[13.x] Add enum types to repository contract / allow enums for tagged caches by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58481](https://github.com/laravel/framework/pull/58481) - \[13.x] Restore eager-loaded relations when deserializing collections by [@&#8203;dxnter](https://github.com/dxnter) in [#&#8203;58477](https://github.com/laravel/framework/pull/58477) - \[13.x] Bump minimum PHPUnit by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58537](https://github.com/laravel/framework/pull/58537) - \[13.x] Respect default value for class dependencies in BoundMethod::call by [@&#8203;comhon-project](https://github.com/comhon-project) in [#&#8203;58553](https://github.com/laravel/framework/pull/58553) - \[13.x] Bump minimum `symfony/process` by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58548](https://github.com/laravel/framework/pull/58548) - \[13.x] Fix `illuminate/json-schema` dependencies by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58612](https://github.com/laravel/framework/pull/58612) - \[13.x] Add `hasSole` and `hasMany` to the `Enumerable` interface by [@&#8203;JosephSilber](https://github.com/JosephSilber) in [#&#8203;58610](https://github.com/laravel/framework/pull/58610) - \[13.x] Ensure bootstrap withMiddleware works for the DownCommand by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58571](https://github.com/laravel/framework/pull/58571) - \[13.x] Remove override attribute on removed method by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58628](https://github.com/laravel/framework/pull/58628) - \[13.x] Ensures compatibility with `symfony/console` 8 by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58629](https://github.com/laravel/framework/pull/58629) - \[13.x] Add `cc` to Mailer contract by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58667](https://github.com/laravel/framework/pull/58667) - Fix ThrottleRequests over-throttling with multiple distinct rate limit keys ([#&#8203;54386](https://github.com/laravel/framework/issues/54386)) by [@&#8203;HeathNaylor](https://github.com/HeathNaylor) in [#&#8203;58707](https://github.com/laravel/framework/pull/58707) - \[13.x] Add `markEmailAsUnverified` to `MustVerifyEmail` interface by [@&#8203;amirhshokri](https://github.com/amirhshokri) in [#&#8203;58701](https://github.com/laravel/framework/pull/58701) - \[13.x] Adds previous exceptions in exception view by [@&#8203;DarkGhostHunter](https://github.com/DarkGhostHunter) in [#&#8203;58680](https://github.com/laravel/framework/pull/58680) - Attributes by [@&#8203;taylorotwell](https://github.com/taylorotwell) in [#&#8203;58578](https://github.com/laravel/framework/pull/58578) - \[13.x] Accept CarbonInterval for PendingProcess timeouts by [@&#8203;riesjart](https://github.com/riesjart) in [#&#8203;58842](https://github.com/laravel/framework/pull/58842) - \[13.x] Add Setup/TearDown trait attributes by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58685](https://github.com/laravel/framework/pull/58685) - \[13.x] Allow aliases to be set in Signature Attribute ([#&#8203;58853](https://github.com/laravel/framework/issues/58853)) by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58874](https://github.com/laravel/framework/pull/58874) - \[13.x] Adds PHPUnit 13 support by [@&#8203;nunomaduro](https://github.com/nunomaduro) in [#&#8203;58890](https://github.com/laravel/framework/pull/58890) - \[13.x] Display route binding fields in `route:list` output by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58889](https://github.com/laravel/framework/pull/58889) - \[13.x] feat: respect `DeleteWhenMissingModels` attribute on queued notifications by [@&#8203;calebdw](https://github.com/calebdw) in [#&#8203;58908](https://github.com/laravel/framework/pull/58908) - \[13.x] Resolve DeleteNotificationWhenMissingModelTest by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58919](https://github.com/laravel/framework/pull/58919) - \[13.x] add missing methods to Queue interface by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58914](https://github.com/laravel/framework/pull/58914) - \[13.x] chore: define closure type on Middleware by [@&#8203;calebdw](https://github.com/calebdw) in [#&#8203;58929](https://github.com/laravel/framework/pull/58929) - \[13.x] Ensure SyncQueue JobAttempted gets the actual exception by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58954](https://github.com/laravel/framework/pull/58954) - \[13.x] Throw exception when served disks share the same URI by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58960](https://github.com/laravel/framework/pull/58960) - \[13.x] withoutOverlapping docblock by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58973](https://github.com/laravel/framework/pull/58973) - \[13.x] Fix `composer.json` by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58975](https://github.com/laravel/framework/pull/58975) - \[13.x] Update the dependencies version by [@&#8203;lucasmichot](https://github.com/lucasmichot) in [#&#8203;58995](https://github.com/laravel/framework/pull/58995) - \[13.x] Normalize composer.json by [@&#8203;lucasmichot](https://github.com/lucasmichot) in [#&#8203;58996](https://github.com/laravel/framework/pull/58996) - \[13.x] Add `flushLocks()` support to Cache stores by [@&#8203;amirhshokri](https://github.com/amirhshokri) in [#&#8203;58907](https://github.com/laravel/framework/pull/58907) - \[13.x] Add cache `flushLocks()` events by [@&#8203;amirhshokri](https://github.com/amirhshokri) in [#&#8203;59006](https://github.com/laravel/framework/pull/59006) - \[13.x] Refactor parameter names that are implemented from the interface by [@&#8203;mrvipchien](https://github.com/mrvipchien) in [#&#8203;59015](https://github.com/laravel/framework/pull/59015) - \[13.x] Add missing [@&#8203;throws](https://github.com/throws) into docblock for various methods by [@&#8203;mrvipchien](https://github.com/mrvipchien) in [#&#8203;59016](https://github.com/laravel/framework/pull/59016) - Add insertOrIgnoreReturning method by [@&#8203;antonkomarev](https://github.com/antonkomarev) in [#&#8203;59025](https://github.com/laravel/framework/pull/59025) - Add corner case tests for insertOrIgnoreReturning by [@&#8203;antonkomarev](https://github.com/antonkomarev) in [#&#8203;59028](https://github.com/laravel/framework/pull/59028) - Extra validation on query builder upsert by [@&#8203;antonkomarev](https://github.com/antonkomarev) in [#&#8203;59029](https://github.com/laravel/framework/pull/59029) - \[13.x] Add ErrorBag attribute support for FormRequest by [@&#8203;Tresor-Kasenda](https://github.com/Tresor-Kasenda) in [#&#8203;59033](https://github.com/laravel/framework/pull/59033) - \[13.x] Add controller middleware attribute by [@&#8203;JurianArie](https://github.com/JurianArie) in [#&#8203;59030](https://github.com/laravel/framework/pull/59030) - \[13.x] Add Authorize controller middleware attribute by [@&#8203;JurianArie](https://github.com/JurianArie) in [#&#8203;59048](https://github.com/laravel/framework/pull/59048) - \[13.x] Fix `symfony/translation` deps by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;59054](https://github.com/laravel/framework/pull/59054) - \[13.x] Remove supports for `laravel/serializable-closure` v1 by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;59053](https://github.com/laravel/framework/pull/59053) - Add saveOrIgnore Eloquent Model method for conflict-safe inserts by [@&#8203;antonkomarev](https://github.com/antonkomarev) in [#&#8203;59026](https://github.com/laravel/framework/pull/59026) - \[13.x] Add support for named arguments in event dispatching and broadcasting by [@&#8203;ph7jack](https://github.com/ph7jack) in [#&#8203;59075](https://github.com/laravel/framework/pull/59075) - \[13.x] Supports `pda/pheanstalk` 8.0+ and remove 5.x by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;59072](https://github.com/laravel/framework/pull/59072) - \[13.x] Bump dependencies by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;59069](https://github.com/laravel/framework/pull/59069) - \[13.x] Add ability to set channel name via Log contextual attribute by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;59101](https://github.com/laravel/framework/pull/59101) - \[13.x] Ensure insertOrIgnoreReturning only marks records as modified when rows are inserted by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;59083](https://github.com/laravel/framework/pull/59083) - \[13.x] Clean up ModelInfo by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;59080](https://github.com/laravel/framework/pull/59080) - \[13.x] Clean up JsonApi by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;59079](https://github.com/laravel/framework/pull/59079) - \[13.x] Indicate that raw queries should be literal strings by [@&#8203;axlon](https://github.com/axlon) in [#&#8203;59081](https://github.com/laravel/framework/pull/59081) - \[13.x] Update brick/math constraint and rounding mode constant by [@&#8203;balu-lt](https://github.com/balu-lt) in [#&#8203;59107](https://github.com/laravel/framework/pull/59107) - \[13.x] fix: MorphToMany morphClass type by [@&#8203;calebdw](https://github.com/calebdw) in [#&#8203;59110](https://github.com/laravel/framework/pull/59110) - \[13.x] Rename Middleware attribute parameter from $value to $middleware by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59133](https://github.com/laravel/framework/pull/59133) - \[13.x] fix: QueueRoutes docblocks for getRoute and $routes property by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59119](https://github.com/laravel/framework/pull/59119) - \[13.x] fix: DoesntContain docblock typo by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59117](https://github.com/laravel/framework/pull/59117) - \[13.x] BusFake assertNothingDispatched should check all dispatches by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;59118](https://github.com/laravel/framework/pull/59118) - \[13.x] fix: Align JsonApiResource flushState maxRelationshipDepth with trait default by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59116](https://github.com/laravel/framework/pull/59116) - \[13.x] Make Cache touch() TTL required and remove redundant value fetching by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59121](https://github.com/laravel/framework/pull/59121) - \[13.x] Fix previousPath() for external referrers by [@&#8203;faytekin](https://github.com/faytekin) in [#&#8203;59159](https://github.com/laravel/framework/pull/59159) - Add depth parameter to Arr::dot() by [@&#8203;faytekin](https://github.com/faytekin) in [#&#8203;59150](https://github.com/laravel/framework/pull/59150) - \[13.x] Drop method\_exists checks in MonitorCommand by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;59151](https://github.com/laravel/framework/pull/59151) - \[12.x] Add strict integer validation to Numeric validation rule by [@&#8203;riesjart](https://github.com/riesjart) in [#&#8203;59156](https://github.com/laravel/framework/pull/59156) - \[12.x] Add \*OrFail transaction methods to `BelongsToMany` by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59153](https://github.com/laravel/framework/pull/59153) - \[13.x] Add Exception to BatchCanceled event by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;59163](https://github.com/laravel/framework/pull/59163) - \[13.x] Add support for `brick/math` 0.16 by [@&#8203;balu-lt](https://github.com/balu-lt) in [#&#8203;59165](https://github.com/laravel/framework/pull/59165) - Bump tar from 7.5.9 to 7.5.11 in /src/Illuminate/Foundation/resources/exceptions/renderer by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;59164](https://github.com/laravel/framework/pull/59164) - \[12.x] Add missing \*OrFail transaction methods to BelongsToMany by [@&#8203;erhanurgun](https://github.com/erhanurgun) in [#&#8203;59168](https://github.com/laravel/framework/pull/59168) - \[12.x] Add inOrderOf() method to query builder by [@&#8203;faytekin](https://github.com/faytekin) in [#&#8203;59162](https://github.com/laravel/framework/pull/59162) - \[12.x] Add tcp\_keepalive option to PhpRedis connector by [@&#8203;heikokrebs](https://github.com/heikokrebs) in [#&#8203;59158](https://github.com/laravel/framework/pull/59158) - \[13.x] Add schedule:pause / resume command by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;59169](https://github.com/laravel/framework/pull/59169) - \[12.x] un`tap` PendingRequest by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;59188](https://github.com/laravel/framework/pull/59188) - \[12.x] Fix float to int deprecation in trans\_choice() for certain locales by [@&#8203;hamedelasma](https://github.com/hamedelasma) in [#&#8203;59174](https://github.com/laravel/framework/pull/59174) - \[12.x] Allow `touch()` to accept multiple columns by [@&#8203;devajmeireles](https://github.com/devajmeireles) in [#&#8203;59175](https://github.com/laravel/framework/pull/59175) - Revert "Add composite index to jobs table migration for improved queue polling" by [@&#8203;taylorotwell](https://github.com/taylorotwell) in [#&#8203;59202](https://github.com/laravel/framework/pull/59202) - \[12.x] Add fluent string validation rule builder by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59201](https://github.com/laravel/framework/pull/59201) - \[13.x] Add schedule resume and pause events by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;59172](https://github.com/laravel/framework/pull/59172) - \[13.x] insertOrIgnoreReturning with multiple unique keys by [@&#8203;tpetry](https://github.com/tpetry) in [#&#8203;59187](https://github.com/laravel/framework/pull/59187) - Update `Command::withProgressBar` phpdoc to account for arrow functions and non-void return types by [@&#8203;billypoke](https://github.com/billypoke) in [#&#8203;58766](https://github.com/laravel/framework/pull/58766) - \[12.x] Lazily evaluate value for constraints in `HasOneOrManyThrough` by [@&#8203;Jacobs63](https://github.com/Jacobs63) in [#&#8203;59231](https://github.com/laravel/framework/pull/59231) - Add string helper to get initials from a string by [@&#8203;denjaland](https://github.com/denjaland) in [#&#8203;59230](https://github.com/laravel/framework/pull/59230) - fix: Strip gzip-compressed output from concurrent process response by [@&#8203;NikhiltGhalme](https://github.com/NikhiltGhalme) in [#&#8203;59224](https://github.com/laravel/framework/pull/59224) - \[12.x] Fix failing tests introduced by [#&#8203;59201](https://github.com/laravel/framework/issues/59201) by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59207](https://github.com/laravel/framework/pull/59207) - \[12.x] Avoid redundant `Util::getParameterClassName()` call in container resolution by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59220](https://github.com/laravel/framework/pull/59220) - \[12.x] Add missing conditional validation rule builders by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59209](https://github.com/laravel/framework/pull/59209) - \[12.x] Skip placeholder replacements when message does not contain them by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59211](https://github.com/laravel/framework/pull/59211) - \[12.x] Use `array_push` with spread operator in `MessageBag::all()` by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59217](https://github.com/laravel/framework/pull/59217) - \[12.x] Cache Route instances in CompiledRouteCollection::getByName() by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59221](https://github.com/laravel/framework/pull/59221) - \[13.x] Add additional Artisan attributes for usage, help and hidden by [@&#8203;ziadoz](https://github.com/ziadoz) in [#&#8203;59204](https://github.com/laravel/framework/pull/59204) - \[12.x] Accept CarbonInterval for retry sleep duration by [@&#8203;riesjart](https://github.com/riesjart) in [#&#8203;59232](https://github.com/laravel/framework/pull/59232) - \[12.x] Fix failing phpstan by [@&#8203;GrahamCampbell](https://github.com/GrahamCampbell) in [#&#8203;59245](https://github.com/laravel/framework/pull/59245) - \[12.x] Update comments for PlanetScale MySQL and PostgreSQL by [@&#8203;GrahamCampbell](https://github.com/GrahamCampbell) in [#&#8203;59244](https://github.com/laravel/framework/pull/59244) - \[12.x] Use big integers for database cache expiration column by [@&#8203;tanerkay](https://github.com/tanerkay) in [#&#8203;59243](https://github.com/laravel/framework/pull/59243) - \[13.x] Allow brick/math ^0.17 by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;59249](https://github.com/laravel/framework/pull/59249) - \[12.x] Display file path and line number for closure routes in `route:list` by [@&#8203;devajmeireles](https://github.com/devajmeireles) in [#&#8203;59237](https://github.com/laravel/framework/pull/59237) - \[12.x] Add wantsMarkdown() and acceptsMarkdown() request methods by [@&#8203;joetannenbaum](https://github.com/joetannenbaum) in [#&#8203;59238](https://github.com/laravel/framework/pull/59238) - \[13.x] Ensure RequiredUnless handles null by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;59235](https://github.com/laravel/framework/pull/59235) ### [`v12.56.0`](https://github.com/laravel/framework/releases/tag/v12.56.0) [Compare Source](https://github.com/laravel/framework/compare/v12.55.1...v12.56.0) - \[12.x] `schedule:list` display expression in the correct timezone by [@&#8203;xiCO2k](https://github.com/xiCO2k) in [#&#8203;59307](https://github.com/laravel/framework/pull/59307) - \[12.x] Fix validation wildcard array message type error by [@&#8203;sadique-cws](https://github.com/sadique-cws) in [#&#8203;59339](https://github.com/laravel/framework/pull/59339) - Preserve class type of mocked classes by [@&#8203;AJenbo](https://github.com/AJenbo) in [#&#8203;59353](https://github.com/laravel/framework/pull/59353) ### [`v12.55.1`](https://github.com/laravel/framework/releases/tag/v12.55.1) [Compare Source](https://github.com/laravel/framework/compare/v12.55.0...v12.55.1) - \[12.x] Correct truncate exceptions at by [@&#8203;bretto36](https://github.com/bretto36) in [#&#8203;59239](https://github.com/laravel/framework/pull/59239) - \[12.x] Fix float pluralization in trans\_choice() by [@&#8203;JulianGlueck](https://github.com/JulianGlueck) in [#&#8203;59268](https://github.com/laravel/framework/pull/59268) - \[12.x] Fix tests on PHP 8.5 by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59251](https://github.com/laravel/framework/pull/59251) ### [`v12.55.0`](https://github.com/laravel/framework/releases/tag/v12.55.0) [Compare Source](https://github.com/laravel/framework/compare/v12.54.1...v12.55.0) - Add depth parameter to Arr::dot() by [@&#8203;faytekin](https://github.com/faytekin) in [#&#8203;59150](https://github.com/laravel/framework/pull/59150) - \[12.x] Add strict integer validation to Numeric validation rule by [@&#8203;riesjart](https://github.com/riesjart) in [#&#8203;59156](https://github.com/laravel/framework/pull/59156) - \[12.x] Add \*OrFail transaction methods to `BelongsToMany` by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59153](https://github.com/laravel/framework/pull/59153) - Bump tar from 7.5.9 to 7.5.11 in /src/Illuminate/Foundation/resources/exceptions/renderer by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;59164](https://github.com/laravel/framework/pull/59164) - \[12.x] Add missing \*OrFail transaction methods to BelongsToMany by [@&#8203;erhanurgun](https://github.com/erhanurgun) in [#&#8203;59168](https://github.com/laravel/framework/pull/59168) - \[12.x] Add inOrderOf() method to query builder by [@&#8203;faytekin](https://github.com/faytekin) in [#&#8203;59162](https://github.com/laravel/framework/pull/59162) - \[12.x] Add tcp\_keepalive option to PhpRedis connector by [@&#8203;heikokrebs](https://github.com/heikokrebs) in [#&#8203;59158](https://github.com/laravel/framework/pull/59158) - \[12.x] un`tap` PendingRequest by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;59188](https://github.com/laravel/framework/pull/59188) - \[12.x] Fix float to int deprecation in trans\_choice() for certain locales by [@&#8203;hamedelasma](https://github.com/hamedelasma) in [#&#8203;59174](https://github.com/laravel/framework/pull/59174) - \[12.x] Allow `touch()` to accept multiple columns by [@&#8203;devajmeireles](https://github.com/devajmeireles) in [#&#8203;59175](https://github.com/laravel/framework/pull/59175) - Revert "Add composite index to jobs table migration for improved queue polling" by [@&#8203;taylorotwell](https://github.com/taylorotwell) in [#&#8203;59202](https://github.com/laravel/framework/pull/59202) - \[12.x] Add fluent string validation rule builder by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59201](https://github.com/laravel/framework/pull/59201) - Update `Command::withProgressBar` phpdoc to account for arrow functions and non-void return types by [@&#8203;billypoke](https://github.com/billypoke) in [#&#8203;58766](https://github.com/laravel/framework/pull/58766) - \[12.x] Lazily evaluate value for constraints in `HasOneOrManyThrough` by [@&#8203;Jacobs63](https://github.com/Jacobs63) in [#&#8203;59231](https://github.com/laravel/framework/pull/59231) - Add string helper to get initials from a string by [@&#8203;denjaland](https://github.com/denjaland) in [#&#8203;59230](https://github.com/laravel/framework/pull/59230) - fix: Strip gzip-compressed output from concurrent process response by [@&#8203;NikhiltGhalme](https://github.com/NikhiltGhalme) in [#&#8203;59224](https://github.com/laravel/framework/pull/59224) - \[12.x] Fix failing tests introduced by [#&#8203;59201](https://github.com/laravel/framework/issues/59201) by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59207](https://github.com/laravel/framework/pull/59207) - \[12.x] Avoid redundant `Util::getParameterClassName()` call in container resolution by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59220](https://github.com/laravel/framework/pull/59220) - \[12.x] Add missing conditional validation rule builders by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59209](https://github.com/laravel/framework/pull/59209) - \[12.x] Skip placeholder replacements when message does not contain them by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59211](https://github.com/laravel/framework/pull/59211) - \[12.x] Use `array_push` with spread operator in `MessageBag::all()` by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59217](https://github.com/laravel/framework/pull/59217) - \[12.x] Cache Route instances in CompiledRouteCollection::getByName() by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59221](https://github.com/laravel/framework/pull/59221) - \[12.x] Accept CarbonInterval for retry sleep duration by [@&#8203;riesjart](https://github.com/riesjart) in [#&#8203;59232](https://github.com/laravel/framework/pull/59232) - \[12.x] Fix failing phpstan by [@&#8203;GrahamCampbell](https://github.com/GrahamCampbell) in [#&#8203;59245](https://github.com/laravel/framework/pull/59245) - \[12.x] Update comments for PlanetScale MySQL and PostgreSQL by [@&#8203;GrahamCampbell](https://github.com/GrahamCampbell) in [#&#8203;59244](https://github.com/laravel/framework/pull/59244) - \[12.x] Use big integers for database cache expiration column by [@&#8203;tanerkay](https://github.com/tanerkay) in [#&#8203;59243](https://github.com/laravel/framework/pull/59243) - \[12.x] Display file path and line number for closure routes in `route:list` by [@&#8203;devajmeireles](https://github.com/devajmeireles) in [#&#8203;59237](https://github.com/laravel/framework/pull/59237) - \[12.x] Add wantsMarkdown() and acceptsMarkdown() request methods by [@&#8203;joetannenbaum](https://github.com/joetannenbaum) in [#&#8203;59238](https://github.com/laravel/framework/pull/59238) ### [`v12.54.1`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12541---2026-03-10) [Compare Source](https://github.com/laravel/framework/compare/v12.54.0...v12.54.1) - \[12.x] Makes imports consistent by [@&#8203;nunomaduro](https://github.com/nunomaduro) in [#&#8203;59149](https://github.com/laravel/framework/pull/59149) ### [`v12.54.0`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12540---2026-03-10) [Compare Source](https://github.com/laravel/framework/compare/v12.53.0...v12.54.0) - \[12.x] Fix division by zero error in `repeatEvery()` method by [@&#8203;amirhshokri](https://github.com/amirhshokri) in [#&#8203;58987](https://github.com/laravel/framework/pull/58987) - \[12.x] Allow app.editor.base\_path to be an empty string by [@&#8203;kminek](https://github.com/kminek) in [#&#8203;58991](https://github.com/laravel/framework/pull/58991) - \[12.x] Add missing, remove unused parameters to docblocks by [@&#8203;mrvipchien](https://github.com/mrvipchien) in [#&#8203;58989](https://github.com/laravel/framework/pull/58989) - Fix URL validation for punycode subdomains by [@&#8203;mpa12](https://github.com/mpa12) in [#&#8203;58982](https://github.com/laravel/framework/pull/58982) - \[12.x] Prevent queue deadlock when reserving a job throws an exception (e.g., attempts overflow) by [@&#8203;sadique-cws](https://github.com/sadique-cws) in [#&#8203;58978](https://github.com/laravel/framework/pull/58978) - \[12.x] bug: throttle with redis ignores after callback by [@&#8203;RobertBoes](https://github.com/RobertBoes) in [#&#8203;58990](https://github.com/laravel/framework/pull/58990) - Update brick/math version constraint to include 0.15 by [@&#8203;julien-boudry](https://github.com/julien-boudry) in [#&#8203;59005](https://github.com/laravel/framework/pull/59005) - Revert "Update brick/math version constraint to include 0.15" by [@&#8203;GrahamCampbell](https://github.com/GrahamCampbell) in [#&#8203;59009](https://github.com/laravel/framework/pull/59009) - Bump rollup from 4.46.3 to 4.59.0 in /src/Illuminate/Foundation/resources/exceptions/renderer by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;59013](https://github.com/laravel/framework/pull/59013) - \[12.x] Fix TwoColumnDetail stripping trailing punctuation from second column values by [@&#8203;theritvars](https://github.com/theritvars) in [#&#8203;59010](https://github.com/laravel/framework/pull/59010) - \[12.x] Add support for assertions on `BinaryFileResponse` by [@&#8203;axlon](https://github.com/axlon) in [#&#8203;59018](https://github.com/laravel/framework/pull/59018) - \[12.x] fix: array offset deprecation warning by [@&#8203;calebdw](https://github.com/calebdw) in [#&#8203;59019](https://github.com/laravel/framework/pull/59019) - \[12.x] Add tsvector column type for PostgreSQL by [@&#8203;milroyfraser](https://github.com/milroyfraser) in [#&#8203;59004](https://github.com/laravel/framework/pull/59004) - Memory Limit passed as string when run from supervisor by [@&#8203;turbo124](https://github.com/turbo124) in [#&#8203;59049](https://github.com/laravel/framework/pull/59049) - \[12.x] Fix facade cache file permissions by [@&#8203;nkoestinger](https://github.com/nkoestinger) in [#&#8203;59059](https://github.com/laravel/framework/pull/59059) - \[12.x] Display oldest pending job in queue:monitor output by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;59073](https://github.com/laravel/framework/pull/59073) - Fix type() method return type in Illuminate\Filesystem\Filesystem by [@&#8203;GNfsys](https://github.com/GNfsys) in [#&#8203;59071](https://github.com/laravel/framework/pull/59071) - \[12.x] Test Improvements by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;59068](https://github.com/laravel/framework/pull/59068) - \[12.x] Wrap flags in `int-mask-of` annotation by [@&#8203;shaedrich](https://github.com/shaedrich) in [#&#8203;59082](https://github.com/laravel/framework/pull/59082) - Fix after-commit observers breaking -ing event cancellation by [@&#8203;eyupcanakman](https://github.com/eyupcanakman) in [#&#8203;59058](https://github.com/laravel/framework/pull/59058) - \[12.x] Fix migrate:fresh failing when database does not exist by [@&#8203;MElkmeshi](https://github.com/MElkmeshi) in [#&#8203;59113](https://github.com/laravel/framework/pull/59113) - \[12.x] Add `interval()` method to `InteractsWithData` by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59114](https://github.com/laravel/framework/pull/59114) - \[12.x] Hash displayName() in cache lock keys by [@&#8203;A5hleyRich](https://github.com/A5hleyRich) in [#&#8203;59141](https://github.com/laravel/framework/pull/59141) - \[12.x] Improved html test helpers by [@&#8203;jnoordsij](https://github.com/jnoordsij) in [#&#8203;59140](https://github.com/laravel/framework/pull/59140) - \[12.x] Add Model::withoutRelation() for selective relation unloading by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59137](https://github.com/laravel/framework/pull/59137) - \[12.x] Include request context in HTTP client Response::dump() by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;59136](https://github.com/laravel/framework/pull/59136) - Fix enum handling in ModelNotFoundException error message by [@&#8203;isaackaara](https://github.com/isaackaara) in [#&#8203;59132](https://github.com/laravel/framework/pull/59132) - \[12.x] Update composer.json to enforce commonmark version without DisallowedRawHtmlRenderer exploit by [@&#8203;Smoggert](https://github.com/Smoggert) in [#&#8203;59131](https://github.com/laravel/framework/pull/59131) - \[12.x] Suppress chmod errors in Filesystem::replace() for non-POSIX filesystems by [@&#8203;eyupcanakman](https://github.com/eyupcanakman) in [#&#8203;59126](https://github.com/laravel/framework/pull/59126) - Add composite index to jobs table migration for improved queue polling by [@&#8203;firecow](https://github.com/firecow) in [#&#8203;59111](https://github.com/laravel/framework/pull/59111) - \[12.x] Load custom markdown extensions for mail by [@&#8203;dasundev](https://github.com/dasundev) in [#&#8203;59051](https://github.com/laravel/framework/pull/59051) - \[12.x] Fix docblock for RateLimiter `for()` method by [@&#8203;amirhshokri](https://github.com/amirhshokri) in [#&#8203;59144](https://github.com/laravel/framework/pull/59144) - \[12.x] Deduplicate paths in view:cache by [@&#8203;ganyicz](https://github.com/ganyicz) in [#&#8203;59145](https://github.com/laravel/framework/pull/59145) ### [`v12.53.0`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12530---2026-02-24) [Compare Source](https://github.com/laravel/framework/compare/v12.52.0...v12.53.0) - \[12.x] Add multipleOf support to JsonSchema numeric types by [@&#8203;Amirhf1](https://github.com/Amirhf1) in [#&#8203;58903](https://github.com/laravel/framework/pull/58903) - \[12.x] chore: don't format notifiables in NotificationSender::send by [@&#8203;calebdw](https://github.com/calebdw) in [#&#8203;58900](https://github.com/laravel/framework/pull/58900) - \[12.x] Add vector option to whereFullText for pre-computed tsvector columns by [@&#8203;milroyfraser](https://github.com/milroyfraser) in [#&#8203;58893](https://github.com/laravel/framework/pull/58893) - \[12.x] Add array key support for `buildMorphMapFromModels()` function by [@&#8203;josephkerkhof](https://github.com/josephkerkhof) in [#&#8203;58891](https://github.com/laravel/framework/pull/58891) - \[12.x] Fix RequestException summarizing for Guzzle streamed responses by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58909](https://github.com/laravel/framework/pull/58909) - \[12.x] Tests for streamed RequestException by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58910](https://github.com/laravel/framework/pull/58910) - Support a serializable classes value on caches by [@&#8203;taylorotwell](https://github.com/taylorotwell) in [#&#8203;58911](https://github.com/laravel/framework/pull/58911) - \[12.x] Simplify TokenGuard methods by [@&#8203;Amirhf1](https://github.com/Amirhf1) in [#&#8203;58923](https://github.com/laravel/framework/pull/58923) - \[12.x] Add uniqueItems support to JsonSchema ArrayType by [@&#8203;Amirhf1](https://github.com/Amirhf1) in [#&#8203;58922](https://github.com/laravel/framework/pull/58922) - \[12.x] Add tests for `PhpRedisClusterConnection` flushdb method by [@&#8203;miladev95](https://github.com/miladev95) in [#&#8203;58917](https://github.com/laravel/framework/pull/58917) - \[12.x] Add support for named arguments in event dispatching and broadcasting by [@&#8203;ph7jack](https://github.com/ph7jack) in [#&#8203;58913](https://github.com/laravel/framework/pull/58913) - \[12.x] Allow `down` command to refresh maintenance mode options by [@&#8203;alies-dev](https://github.com/alies-dev) in [#&#8203;58918](https://github.com/laravel/framework/pull/58918) - \[12.x] Rollback lingering PDO transaction before retrying on commit deadlock by [@&#8203;dxnter](https://github.com/dxnter) in [#&#8203;58906](https://github.com/laravel/framework/pull/58906) - \[12.x] Simplify queue resolution using `match` expression by [@&#8203;josephkerkhof](https://github.com/josephkerkhof) in [#&#8203;58928](https://github.com/laravel/framework/pull/58928) - Bump tar from 7.5.7 to 7.5.9 in /src/Illuminate/Foundation/resources/exceptions/renderer by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;58931](https://github.com/laravel/framework/pull/58931) - \[12.x] Fix model serialization in queue jobs by [@&#8203;axlon](https://github.com/axlon) in [#&#8203;58939](https://github.com/laravel/framework/pull/58939) - \[12.x] Change Mail text alignment from left to start by [@&#8203;zvizvi](https://github.com/zvizvi) in [#&#8203;58935](https://github.com/laravel/framework/pull/58935) - \[12.x] Refactor `convertValuesToBoolean` to use `match` for cleaner logic by [@&#8203;josephkerkhof](https://github.com/josephkerkhof) in [#&#8203;58927](https://github.com/laravel/framework/pull/58927) - \[12.x] Allow Scheduled Command `Event` macros to be applied to schedule groups by [@&#8203;stevebauman](https://github.com/stevebauman) in [#&#8203;58926](https://github.com/laravel/framework/pull/58926) - \[12.x] Fix race condition on creating the real-time facade cache file ([#&#8203;58945](https://github.com/laravel/framework/issues/58945)) by [@&#8203;sosias](https://github.com/sosias) in [#&#8203;58947](https://github.com/laravel/framework/pull/58947) - \[12.x] Show all mismatched values in `assertSessionHasAll` failure output by [@&#8203;dxnter](https://github.com/dxnter) in [#&#8203;58946](https://github.com/laravel/framework/pull/58946) - Fix RetryCommand not working for SQS FIFO queue by [@&#8203;cwang22](https://github.com/cwang22) in [#&#8203;58936](https://github.com/laravel/framework/pull/58936) - \[12.x] Improve return types for Wormhole and InteractsWithTime by [@&#8203;KentarouTakeda](https://github.com/KentarouTakeda) in [#&#8203;58951](https://github.com/laravel/framework/pull/58951) - \[12.x] Add `Cache::funnel()` for concurrency limiting with any cache driver by [@&#8203;mathiasgrimm](https://github.com/mathiasgrimm) in [#&#8203;58439](https://github.com/laravel/framework/pull/58439) - \[12.x] Ensure `oldest_pending` is displayed in `queue:monitor` by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58952](https://github.com/laravel/framework/pull/58952) - \[12.x] Fix/cross database null safe equals by [@&#8203;patrickomeara](https://github.com/patrickomeara) in [#&#8203;58962](https://github.com/laravel/framework/pull/58962) - \[12.x] Add MySQL inRandomOrder regression tests by [@&#8203;laraib15](https://github.com/laraib15) in [#&#8203;58966](https://github.com/laravel/framework/pull/58966) - \[12.x] Add missing [@&#8203;throws](https://github.com/throws) docblocks to Illuminate/Http by [@&#8203;Amirhf1](https://github.com/Amirhf1) in [#&#8203;58965](https://github.com/laravel/framework/pull/58965) - Fix Invalid Types by [@&#8203;RyanSchaefer](https://github.com/RyanSchaefer) in [#&#8203;58963](https://github.com/laravel/framework/pull/58963) - JSONP Check by [@&#8203;taylorotwell](https://github.com/taylorotwell) in [#&#8203;58971](https://github.com/laravel/framework/pull/58971) - \[12.x] Resolve Stan Mailable CI error by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58972](https://github.com/laravel/framework/pull/58972) - \[12.x] Remove unnecessary dirname calls. by [@&#8203;jelleroorda](https://github.com/jelleroorda) in [#&#8203;58984](https://github.com/laravel/framework/pull/58984) - \[12.x] Add missing [@&#8203;throws](https://github.com/throws) docblocks to `Serializer` and `Type` classes in `Illuminate/JsonSchema` by [@&#8203;mrvipchien](https://github.com/mrvipchien) in [#&#8203;58981](https://github.com/laravel/framework/pull/58981) ### [`v12.52.0`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12520---2026-02-17) [Compare Source](https://github.com/laravel/framework/compare/v12.51.0...v12.52.0) - \[12.x] Fix: `@return` in doc blocks by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58746](https://github.com/laravel/framework/pull/58746) - \[12.x] Ensure defer callbacks aren't discarded when using the sync queue by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58745](https://github.com/laravel/framework/pull/58745) - \[12.x] Refactor: remove `Arr::wrap()` and add `Collection::wrap()` by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58748](https://github.com/laravel/framework/pull/58748) - Add support for `temporaryUploadUrl` to the `local` filesystem by [@&#8203;mnapoli](https://github.com/mnapoli) in [#&#8203;58499](https://github.com/laravel/framework/pull/58499) - Only merge cached casts for accessed attribute by [@&#8203;ug-christoph](https://github.com/ug-christoph) in [#&#8203;57627](https://github.com/laravel/framework/pull/57627) - \[12.x] Sort stan issue on PendingRequest by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58760](https://github.com/laravel/framework/pull/58760) - \[12.x] Update alphabetical order in facades.yml by [@&#8203;luisscruza](https://github.com/luisscruza) in [#&#8203;58757](https://github.com/laravel/framework/pull/58757) - \[12.x] allow string-based expressions for selectExpression() by [@&#8203;tpetry](https://github.com/tpetry) in [#&#8203;58753](https://github.com/laravel/framework/pull/58753) - Revert "\[12.x] Adjust freshTimestamp for SQL Server" by [@&#8203;calebdw](https://github.com/calebdw) in [#&#8203;58758](https://github.com/laravel/framework/pull/58758) - \[12.x] Fix return empty Collection for non-model JSON:API resources by [@&#8203;noir4y](https://github.com/noir4y) in [#&#8203;58752](https://github.com/laravel/framework/pull/58752) - \[12.x] Refactor: remove extra space by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58751](https://github.com/laravel/framework/pull/58751) - \[12.x] Standardize regex delimiter in ObserverMakeCommand::parseModel by [@&#8203;mohammadRezaei1380](https://github.com/mohammadRezaei1380) in [#&#8203;58777](https://github.com/laravel/framework/pull/58777) - \[12.x] Fix incorrect [@&#8203;return](https://github.com/return) type in VendorPublishCommand::publishTag by [@&#8203;mohammadRezaei1380](https://github.com/mohammadRezaei1380) in [#&#8203;58774](https://github.com/laravel/framework/pull/58774) - Fix phpdoc type in promptForMissingArgumentsUsing by [@&#8203;billypoke](https://github.com/billypoke) in [#&#8203;58768](https://github.com/laravel/framework/pull/58768) - \[12.x] cast `Batch::progress()` return value to `int` by [@&#8203;zjbarg](https://github.com/zjbarg) in [#&#8203;58767](https://github.com/laravel/framework/pull/58767) - \[12.x] Drop Collection import from `AbstractRouteCollection` by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58769](https://github.com/laravel/framework/pull/58769) - \[12.x] Fix missing InputArgument::IS\_ARRAY in getArguments PHPDoc by [@&#8203;kayw-geek](https://github.com/kayw-geek) in [#&#8203;58771](https://github.com/laravel/framework/pull/58771) - \[12.x] Fix: `@return` for `resolveResourceRelationshipIdentifiers()` by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58764](https://github.com/laravel/framework/pull/58764) - \[12.x] `Mailable::later()` does not set delay on `SendQueuedMailable` instance by [@&#8203;amirhshokri](https://github.com/amirhshokri) in [#&#8203;58765](https://github.com/laravel/framework/pull/58765) - \[12.x] Refactor: use `enum_value()` helper for environment value extraction by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58785](https://github.com/laravel/framework/pull/58785) - \[12.x] Add delay support assertions for queued mailables by [@&#8203;amirhshokri](https://github.com/amirhshokri) in [#&#8203;58787](https://github.com/laravel/framework/pull/58787) - Fix MySQL connection string to use --ssl-mode=DISABLED for modern clients by [@&#8203;AJenbo](https://github.com/AJenbo) in [#&#8203;58786](https://github.com/laravel/framework/pull/58786) - \[12.x] Refactor: standardize regex by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58789](https://github.com/laravel/framework/pull/58789) - \[12.x] Allow $preserveKeys param for LazyCollection random by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58791](https://github.com/laravel/framework/pull/58791) - \[12.x] Refactor: `new Collection()` by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58793](https://github.com/laravel/framework/pull/58793) - \[12.x] Add `makeMany` method to Factory by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58795](https://github.com/laravel/framework/pull/58795) - \[12.x] Add `withoutAfterMaking()` and `withoutAfterCreating()` factory helpers by [@&#8203;ziadoz](https://github.com/ziadoz) in [#&#8203;58794](https://github.com/laravel/framework/pull/58794) - \[12.x] Backport withMiddleware changes from 13.x by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58798](https://github.com/laravel/framework/pull/58798) - \[12.x] Fix: add `|array` in doc block by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58805](https://github.com/laravel/framework/pull/58805) - \[12.x] Add option to opt out of parallel safe cache prefix by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58801](https://github.com/laravel/framework/pull/58801) - \[12.x] Normalize Throwable docblocks to fully-qualified name by [@&#8203;amirhshokri](https://github.com/amirhshokri) in [#&#8203;58802](https://github.com/laravel/framework/pull/58802) - \[12.x] Refactor: remove unnecessary `\BackedEnum` by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58807](https://github.com/laravel/framework/pull/58807) - Use atomic writes when creating inline Blade component views by [@&#8203;cyppe](https://github.com/cyppe) in [#&#8203;58815](https://github.com/laravel/framework/pull/58815) - \[12.x] Add missing tests for Request::fullUrlWithoutQuery by [@&#8203;miladev95](https://github.com/miladev95) in [#&#8203;58814](https://github.com/laravel/framework/pull/58814) - Improve File::toKilobytes() DocBlock return type by [@&#8203;Amirhf1](https://github.com/Amirhf1) in [#&#8203;58811](https://github.com/laravel/framework/pull/58811) - Use atomic writes in BladeCompiler to prevent race condition by [@&#8203;cyppe](https://github.com/cyppe) in [#&#8203;58812](https://github.com/laravel/framework/pull/58812) - \[12.x] Refactor: add `JSON decoded` by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58830](https://github.com/laravel/framework/pull/58830) - \[12.x] Refactor: add missing `@throws` tag in dock block by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58829](https://github.com/laravel/framework/pull/58829) - \[12.x] Formatting by [@&#8203;amirhshokri](https://github.com/amirhshokri) in [#&#8203;58828](https://github.com/laravel/framework/pull/58828) - \[12x]Refactor: remove unnecessary \BackedEnum in HasAttributes.php by [@&#8203;mohammadRezaei1380](https://github.com/mohammadRezaei1380) in [#&#8203;58827](https://github.com/laravel/framework/pull/58827) - \[12x] Refactor conditional message formatting using match expression by [@&#8203;mohammadRezaei1380](https://github.com/mohammadRezaei1380) in [#&#8203;58825](https://github.com/laravel/framework/pull/58825) - \[12.x] Refactor: use `match` expression by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58824](https://github.com/laravel/framework/pull/58824) - \[12.x] Simplify `compileSelect` method return by [@&#8203;amirhshokri](https://github.com/amirhshokri) in [#&#8203;58821](https://github.com/laravel/framework/pull/58821) - \[12.x] Refactor: simplify code by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58820](https://github.com/laravel/framework/pull/58820) - \[12.x] Refactor: remove unnecessary `\BackedEnum` by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58818](https://github.com/laravel/framework/pull/58818) - \[12.x] Ensure HttpClientTest doesnt flake in Windows CI by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58817](https://github.com/laravel/framework/pull/58817) - \[12.x] Refactor: `JSON decoded` to `decoded JSON` by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58849](https://github.com/laravel/framework/pull/58849) - \[12.x] Allow closure parameters in docblock for when() helper function by [@&#8203;gazben](https://github.com/gazben) in [#&#8203;58862](https://github.com/laravel/framework/pull/58862) - \[12.x] Fix typo in cache `composer.json` by [@&#8203;amirhshokri](https://github.com/amirhshokri) in [#&#8203;58875](https://github.com/laravel/framework/pull/58875) - \[12.x] Remove unnecessary `forgetDriver()`from TestCaches by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58878](https://github.com/laravel/framework/pull/58878) - Revert "\[12.x] Fixed precision checks for column types in SQL Server grammar" by [@&#8203;taylorotwell](https://github.com/taylorotwell) in [#&#8203;58888](https://github.com/laravel/framework/pull/58888) - \[12.x] Display closures and standalone functions correctly in exception trace by [@&#8203;avosalmon](https://github.com/avosalmon) in [#&#8203;58879](https://github.com/laravel/framework/pull/58879) ### [`v12.51.0`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12510---2026-02-10) [Compare Source](https://github.com/laravel/framework/compare/v12.50.0...v12.51.0) - Remove type hint in favor of return type by [@&#8203;WendellAdriel](https://github.com/WendellAdriel) in [#&#8203;58621](https://github.com/laravel/framework/pull/58621) - \[12.x] Adjust freshTimestamp for SQL Server by [@&#8203;aimeos](https://github.com/aimeos) in [#&#8203;58614](https://github.com/laravel/framework/pull/58614) - \[12.x] Handle binary data in Js::encode() debug renderer by [@&#8203;denis-chmel](https://github.com/denis-chmel) in [#&#8203;58618](https://github.com/laravel/framework/pull/58618) - \[12.x] Add ArrayObject props to AsEncryptedArrayObject to match AsArrayObject by [@&#8203;AndrewMast](https://github.com/AndrewMast) in [#&#8203;58619](https://github.com/laravel/framework/pull/58619) - fix: Arr::wrap() return type by [@&#8203;calebdw](https://github.com/calebdw) in [#&#8203;58625](https://github.com/laravel/framework/pull/58625) - \[12.x] Fix typo in type definition by [@&#8203;shaedrich](https://github.com/shaedrich) in [#&#8203;58624](https://github.com/laravel/framework/pull/58624) - \[12.x] Prevent dupe locale checks in `Lang::get()` when locale matches fallback by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58626](https://github.com/laravel/framework/pull/58626) - \[12.x] chore: add deprecation to Request::get() by [@&#8203;calebdw](https://github.com/calebdw) in [#&#8203;58635](https://github.com/laravel/framework/pull/58635) - \[12.x] Fix Str::substrReplace for edge cases with negative offset or length by [@&#8203;jboonstra70](https://github.com/jboonstra70) in [#&#8203;58634](https://github.com/laravel/framework/pull/58634) - \[12.x] Refactor: improve doc blocks by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58630](https://github.com/laravel/framework/pull/58630) - \[12.x] Add BatchCancelled Event by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58627](https://github.com/laravel/framework/pull/58627) - \[12.x] Fix typo in type definition by [@&#8203;amirhshokri](https://github.com/amirhshokri) in [#&#8203;58638](https://github.com/laravel/framework/pull/58638) - \[12.x] Update `reload` tasks to include `schedule:interruption` by [@&#8203;adevade](https://github.com/adevade) in [#&#8203;58637](https://github.com/laravel/framework/pull/58637) - docs: add missing description to FilesystemAdapter::report() docblock by [@&#8203;eranishojha](https://github.com/eranishojha) in [#&#8203;58640](https://github.com/laravel/framework/pull/58640) - \[12.x] Allow closures for values in `firstOrCreate` and `createOrFirst` by [@&#8203;gcavanunez](https://github.com/gcavanunez) in [#&#8203;58639](https://github.com/laravel/framework/pull/58639) - \[12.x] Support `afterSending` method on notification by [@&#8203;gdebrauwer](https://github.com/gdebrauwer) in [#&#8203;58654](https://github.com/laravel/framework/pull/58654) - \[12.x] Allow Stringable::deduplicate() to accept array of characters by [@&#8203;Tresor-Kasenda](https://github.com/Tresor-Kasenda) in [#&#8203;58649](https://github.com/laravel/framework/pull/58649) - Update regex for trans\_choice to allow negative ranges by [@&#8203;hmazter](https://github.com/hmazter) in [#&#8203;58648](https://github.com/laravel/framework/pull/58648) - Added timeout method to query builder for MySQL by [@&#8203;Vladelis](https://github.com/Vladelis) in [#&#8203;58644](https://github.com/laravel/framework/pull/58644) - \[12.x] Add `assertJobs` method on `PendingBatchFake` by [@&#8203;gdebrauwer](https://github.com/gdebrauwer) in [#&#8203;58606](https://github.com/laravel/framework/pull/58606) - \[12.x] Fix batch counts when deleteWhenMissingModels skips missing model jobs by [@&#8203;yankewei](https://github.com/yankewei) in [#&#8203;58541](https://github.com/laravel/framework/pull/58541) - \[12.x] Fix Postgres sequence starting value for custom schemas/connections by [@&#8203;joteejotee](https://github.com/joteejotee) in [#&#8203;58199](https://github.com/laravel/framework/pull/58199) - \[12.x] Add `whenFails` and `whenPasses` methods on `Validator` by [@&#8203;gdebrauwer](https://github.com/gdebrauwer) in [#&#8203;58655](https://github.com/laravel/framework/pull/58655) - \[12.x] Bus::assertBatched() with array by [@&#8203;gdebrauwer](https://github.com/gdebrauwer) in [#&#8203;58659](https://github.com/laravel/framework/pull/58659) - \[12.x] Refactor: improve doc block by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58677](https://github.com/laravel/framework/pull/58677) - \[12.x] Add withoutHeader() method to Response by [@&#8203;miladev95](https://github.com/miladev95) in [#&#8203;58671](https://github.com/laravel/framework/pull/58671) - \[12.x] Add integer array key support in phpdocs by [@&#8203;dluague](https://github.com/dluague) in [#&#8203;58668](https://github.com/laravel/framework/pull/58668) - `Illuminate\Console\Parser` typehint fix. by [@&#8203;LastDragon-ru](https://github.com/LastDragon-ru) in [#&#8203;58670](https://github.com/laravel/framework/pull/58670) - fix: replace substr with mb\_substr for user agent encoding by [@&#8203;jonagoldman](https://github.com/jonagoldman) in [#&#8203;58703](https://github.com/laravel/framework/pull/58703) - chore: fix the Laravel ASCII SVG so that its characters perfectly align to columns by [@&#8203;markjaquith](https://github.com/markjaquith) in [#&#8203;58702](https://github.com/laravel/framework/pull/58702) - \[12.x] Allow retrieving all view data via viewData() in TestResponse by [@&#8203;shane-zeng](https://github.com/shane-zeng) in [#&#8203;58700](https://github.com/laravel/framework/pull/58700) - Exception page: fix pop in for non main frames by [@&#8203;martinpl](https://github.com/martinpl) in [#&#8203;58698](https://github.com/laravel/framework/pull/58698) - \[12.x] Add missing [@&#8203;throws](https://github.com/throws) annotations to validation rules and JsonResponse by [@&#8203;QDenka](https://github.com/QDenka) in [#&#8203;58697](https://github.com/laravel/framework/pull/58697) - \[12.x] Add conditional return type hint for Route::middleware() method. by [@&#8203;marcreichel](https://github.com/marcreichel) in [#&#8203;58699](https://github.com/laravel/framework/pull/58699) - \[12.x] Improved type hints for when() helper function. by [@&#8203;marcreichel](https://github.com/marcreichel) in [#&#8203;58696](https://github.com/laravel/framework/pull/58696) - \[12.x] Support Eloquent builders and relations as subqueries to update queries by [@&#8203;axlon](https://github.com/axlon) in [#&#8203;58692](https://github.com/laravel/framework/pull/58692) - Add cache prefix isolation for parallel testing ([#&#8203;57584](https://github.com/laravel/framework/issues/57584)) by [@&#8203;HeathNaylor](https://github.com/HeathNaylor) in [#&#8203;58691](https://github.com/laravel/framework/pull/58691) - Fix whereBetween to accept DatePeriod and handle missing end dates ([#&#8203;58092](https://github.com/laravel/framework/issues/58092)) by [@&#8203;HeathNaylor](https://github.com/HeathNaylor) in [#&#8203;58687](https://github.com/laravel/framework/pull/58687) - Fix Str::isUrl() returning false for single-char domain names ([#&#8203;58538](https://github.com/laravel/framework/issues/58538)) by [@&#8203;HeathNaylor](https://github.com/HeathNaylor) in [#&#8203;58686](https://github.com/laravel/framework/pull/58686) - Fix HTTP client response type hints for IDE compatibility ([#&#8203;58555](https://github.com/laravel/framework/issues/58555)) by [@&#8203;HeathNaylor](https://github.com/HeathNaylor) in [#&#8203;58684](https://github.com/laravel/framework/pull/58684) - Fix types for ConfirmableTrait::confirmToProceed by [@&#8203;rolfvandekrol](https://github.com/rolfvandekrol) in [#&#8203;58681](https://github.com/laravel/framework/pull/58681) - \[12.x] Refactor: simplify return with `??` by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58679](https://github.com/laravel/framework/pull/58679) - \[12.x] Refactor: replace `header` / `headers` with standardized `header(s)` by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58678](https://github.com/laravel/framework/pull/58678) - Add SSL cert/key support to MySQL schema dump and load ([#&#8203;57821](https://github.com/laravel/framework/issues/57821)) by [@&#8203;HeathNaylor](https://github.com/HeathNaylor) in [#&#8203;58690](https://github.com/laravel/framework/pull/58690) - Allow specifying Redis connection on Redis-based queue middleware by [@&#8203;markieo1](https://github.com/markieo1) in [#&#8203;58656](https://github.com/laravel/framework/pull/58656) - \[12.x] Use JS to create the Laravel ASCII SVG logo on the fly by [@&#8203;markjaquith](https://github.com/markjaquith) in [#&#8203;58719](https://github.com/laravel/framework/pull/58719) - \[12.x] Feat: add `orderByPivotDesc()` by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58720](https://github.com/laravel/framework/pull/58720) - \[12.x] Refactor: add `@throws \InvalidArgumentException` to doc blocks by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58714](https://github.com/laravel/framework/pull/58714) - \[12.x] Restore original dispatcher bindings after precognitive request by [@&#8203;pindab0ter](https://github.com/pindab0ter) in [#&#8203;58716](https://github.com/laravel/framework/pull/58716) - \[12.x] Ensure throwIfStatus / throwUnlessStatus work for all status codes by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58724](https://github.com/laravel/framework/pull/58724) - Fix Queue::fake() not releasing unique job locks between tests ([#&#8203;58533](https://github.com/laravel/framework/issues/58533)) by [@&#8203;HeathNaylor](https://github.com/HeathNaylor) in [#&#8203;58718](https://github.com/laravel/framework/pull/58718) - \[12.x] Refactor: add `_` to more readability digit by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58738](https://github.com/laravel/framework/pull/58738) - \[12.x] Refactor: Clean up unused $config parameters in ConcurrencyManager by [@&#8203;alizadeh7091](https://github.com/alizadeh7091) in [#&#8203;58739](https://github.com/laravel/framework/pull/58739) - \[12.x] Refactor: use `Dumpable` by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58743](https://github.com/laravel/framework/pull/58743) - \[12.x] Update forever cookie factory docblock to reflect 400-day duration by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58744](https://github.com/laravel/framework/pull/58744) ### [`v12.50.0`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12500---2026-02-04) [Compare Source](https://github.com/laravel/framework/compare/v12.49.0...v12.50.0) - \[12.x] Test Improvements by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58531](https://github.com/laravel/framework/pull/58531) - \[12.x] Resolve the correct queue factory when using laravel octane by [@&#8203;BertvanHoekelen](https://github.com/BertvanHoekelen) in [#&#8203;58530](https://github.com/laravel/framework/pull/58530) - \[12.x] Clear parallel test view cache directories by [@&#8203;eduPHP](https://github.com/eduPHP) in [#&#8203;58525](https://github.com/laravel/framework/pull/58525) - \[12.x] fix: allow phpstan to understand default value for Request::enum by [@&#8203;calebdw](https://github.com/calebdw) in [#&#8203;58529](https://github.com/laravel/framework/pull/58529) - \[12.x] feat: allow queued listeners to be unique by [@&#8203;calebdw](https://github.com/calebdw) in [#&#8203;58402](https://github.com/laravel/framework/pull/58402) - \[12.x] Use morphMap when serializing model identifiers by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58482](https://github.com/laravel/framework/pull/58482) - \[12.x] Add `authority`method to Support/Uri by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58534](https://github.com/laravel/framework/pull/58534) - \[12.x] Use try/finally for buildStack cleanup in Container::build by [@&#8203;comhon-project](https://github.com/comhon-project) in [#&#8203;58536](https://github.com/laravel/framework/pull/58536) - \[12.x] Update phpunit version constraints to address CVE by [@&#8203;PerryvanderMeer](https://github.com/PerryvanderMeer) in [#&#8203;58526](https://github.com/laravel/framework/pull/58526) - Bump tar from 7.5.6 to 7.5.7 in /src/Illuminate/Foundation/resources/exceptions/renderer by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;58539](https://github.com/laravel/framework/pull/58539) - \[12.x] Ensure Validator message defaults if using custom size messages by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58554](https://github.com/laravel/framework/pull/58554) - \[12.x] Add withoutAppends to HasAttributes by [@&#8203;AhmedAlaa4611](https://github.com/AhmedAlaa4611) in [#&#8203;58552](https://github.com/laravel/framework/pull/58552) - \[12.x] Refactor: simplify in `match` by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58547](https://github.com/laravel/framework/pull/58547) - Revert "\[12.x] Update phpunit version constraints to address CVE" by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58542](https://github.com/laravel/framework/pull/58542) - \[12.x] Add `hasMany()` method to collections by [@&#8203;JosephSilber](https://github.com/JosephSilber) in [#&#8203;58550](https://github.com/laravel/framework/pull/58550) - \[12.x] Retain associative keys on eager loaded relations by [@&#8203;Jade-GG](https://github.com/Jade-GG) in [#&#8203;58506](https://github.com/laravel/framework/pull/58506) - \[12.x] Add typed getters on Cache by [@&#8203;ahinkle](https://github.com/ahinkle) in [#&#8203;58451](https://github.com/laravel/framework/pull/58451) - \[12.x] Add `MaintenanceMode` facade to docblock generator by [@&#8203;axlon](https://github.com/axlon) in [#&#8203;58564](https://github.com/laravel/framework/pull/58564) - \[12.x] Adjust docblock for formatActionForCli by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58562](https://github.com/laravel/framework/pull/58562) - \[12.x] brick/math `of` float deprecation by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58563](https://github.com/laravel/framework/pull/58563) - \[12.x] Improve migration types by [@&#8203;shaedrich](https://github.com/shaedrich) in [#&#8203;58561](https://github.com/laravel/framework/pull/58561) - \[12.x] Remove extra space by [@&#8203;amirhshokri](https://github.com/amirhshokri) in [#&#8203;58573](https://github.com/laravel/framework/pull/58573) - \[12.x] Drop foreach from preg\_replace\_callback helper by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58570](https://github.com/laravel/framework/pull/58570) - \[12.x] Improve typing in console/command namespace by [@&#8203;shaedrich](https://github.com/shaedrich) in [#&#8203;58565](https://github.com/laravel/framework/pull/58565) - \[12.x] Refactor: improve tests by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58582](https://github.com/laravel/framework/pull/58582) - \[12.x] Update callback type hints for Context's `Repository` by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58581](https://github.com/laravel/framework/pull/58581) - \[12.x] Exclude decorative ASCII art SVG from exception page in non-browser contexts by [@&#8203;serhiilabs](https://github.com/serhiilabs) in [#&#8203;58580](https://github.com/laravel/framework/pull/58580) - \[12.x] Improve types of `Arr` helper by [@&#8203;shaedrich](https://github.com/shaedrich) in [#&#8203;58518](https://github.com/laravel/framework/pull/58518) - \[12.x] Add tests for withoutAppends() method by [@&#8203;AhmedAlaa4611](https://github.com/AhmedAlaa4611) in [#&#8203;58583](https://github.com/laravel/framework/pull/58583) - \[12.x] Add tests for hasAppended() method by [@&#8203;AhmedAlaa4611](https://github.com/AhmedAlaa4611) in [#&#8203;58587](https://github.com/laravel/framework/pull/58587) - \[12.x] Sort flaky MaintenanceModeTest by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58590](https://github.com/laravel/framework/pull/58590) - \[12.x] Preserve notification state mutations from via() in sendNow() by [@&#8203;alimorgaan](https://github.com/alimorgaan) in [#&#8203;58558](https://github.com/laravel/framework/pull/58558) - \[12.x] Fix: add `|null` for `$name` in `storeAs()` by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58613](https://github.com/laravel/framework/pull/58613) - \[12.x] Add `InteractsWithData::clamp()` by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58608](https://github.com/laravel/framework/pull/58608) - \[12.x] try-catch all composer package uninstalls by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58609](https://github.com/laravel/framework/pull/58609) - \[12.x] `InteractsWithData@enum()` refactor by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58607](https://github.com/laravel/framework/pull/58607) - \[12.x] Enum support for Cache::get() with array keys by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58616](https://github.com/laravel/framework/pull/58616) - \[12.x] Fixed precision checks for column types in SQL Server grammar by [@&#8203;aimeos](https://github.com/aimeos) in [#&#8203;58602](https://github.com/laravel/framework/pull/58602) - \[12.x] Fix `illuminate/reflection` workflow directory by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58600](https://github.com/laravel/framework/pull/58600) - \[12.x] Ensure File fail doesn't double translate in fail() by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58598](https://github.com/laravel/framework/pull/58598) - \[12.x] Ensure mailable HTML assertions properly escape quotes by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58595](https://github.com/laravel/framework/pull/58595) ### [`v12.49.0`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12490---2026-01-28) [Compare Source](https://github.com/laravel/framework/compare/v12.48.1...v12.49.0) - \[12.x] Clean up compiled views after parallel testing by [@&#8203;dxnter](https://github.com/dxnter) in [#&#8203;58440](https://github.com/laravel/framework/pull/58440) - \[12.x] Support "where subquery between columns" by [@&#8203;gdebrauwer](https://github.com/gdebrauwer) in [#&#8203;58441](https://github.com/laravel/framework/pull/58441) - \[12.x] Use searchable prompt for db:table command by [@&#8203;sakshamgorey](https://github.com/sakshamgorey) in [#&#8203;58442](https://github.com/laravel/framework/pull/58442) - \[12.x] keep single NotificationSender instance by [@&#8203;rodrigopedra](https://github.com/rodrigopedra) in [#&#8203;58452](https://github.com/laravel/framework/pull/58452) - \[12.x] Allow enum keys in Cache::flexible() and withoutOverlapping() by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58444](https://github.com/laravel/framework/pull/58444) - \[12.x] Add preserveKeys method to AnonymousResourceCollection by [@&#8203;comhon-project](https://github.com/comhon-project) in [#&#8203;58443](https://github.com/laravel/framework/pull/58443) - Bump tar from 7.5.3 to 7.5.6 in /src/Illuminate/Foundation/resources/exceptions/renderer by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;58454](https://github.com/laravel/framework/pull/58454) - \[12.x] Fix memory leak in `Arr::dot()` by [@&#8203;benjamin-commentor](https://github.com/benjamin-commentor) in [#&#8203;58458](https://github.com/laravel/framework/pull/58458) - 12.x fix: use multibyte-safe functions in Str::afterLast() by [@&#8203;irabbi360](https://github.com/irabbi360) in [#&#8203;58457](https://github.com/laravel/framework/pull/58457) - \[12.x] Ensure Session now() and flash() accept enums by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58459](https://github.com/laravel/framework/pull/58459) - \[12.x] Revert "feat: aliasing when selecting database expressions ([#&#8203;58436](https://github.com/laravel/framework/issues/58436))" by [@&#8203;u01jmg3](https://github.com/u01jmg3) in [#&#8203;58469](https://github.com/laravel/framework/pull/58469) - \[12.x] Add `hasSole()` method to collections by [@&#8203;JosephSilber](https://github.com/JosephSilber) in [#&#8203;58463](https://github.com/laravel/framework/pull/58463) - \[12.x] Skip message serialization when log level is not handled by [@&#8203;dxnter](https://github.com/dxnter) in [#&#8203;58475](https://github.com/laravel/framework/pull/58475) - \[12.x] Add missing [@&#8203;param](https://github.com/param) documentation to SessionGuard constructor by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58493](https://github.com/laravel/framework/pull/58493) - \[12.x] do assignment instead of mutating to handle immutable carbon object. by [@&#8203;MrPunyapal](https://github.com/MrPunyapal) in [#&#8203;58498](https://github.com/laravel/framework/pull/58498) - Enhance index hint validation for multiple indexes by [@&#8203;FlexIDK](https://github.com/FlexIDK) in [#&#8203;58505](https://github.com/laravel/framework/pull/58505) - \[12.x] Make QueueFake assertPushedTimes public by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58511](https://github.com/laravel/framework/pull/58511) - \[12.x] Ignore deadlock on DatabaseLock release by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58507](https://github.com/laravel/framework/pull/58507) - \[12.x] Allow `down` command --retry option to accept datetime values by [@&#8203;alies-dev](https://github.com/alies-dev) in [#&#8203;58509](https://github.com/laravel/framework/pull/58509) ### [`v12.48.1`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12481---2026-01-20) [Compare Source](https://github.com/laravel/framework/compare/v12.48.0...v12.48.1) ### [`v12.48.0`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12480---2026-01-20) [Compare Source](https://github.com/laravel/framework/compare/v12.47.0...v12.48.0) - \[12.x] Fix missing variable reassignment by [@&#8203;nunomaduro](https://github.com/nunomaduro) in [#&#8203;58376](https://github.com/laravel/framework/pull/58376) - \[12.x] Improve PendingRequest types by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58386](https://github.com/laravel/framework/pull/58386) - \[12.x] Fix backward compatibility with third-party guards by [@&#8203;daniser](https://github.com/daniser) in [#&#8203;58385](https://github.com/laravel/framework/pull/58385) - Make \Illuminate\Testing\TestResponse::assertHeader() case insensitive by [@&#8203;HenkPoley](https://github.com/HenkPoley) in [#&#8203;58383](https://github.com/laravel/framework/pull/58383) - \[12.x] Fix TypeError when validation rule has empty parameters by [@&#8203;irabbi360](https://github.com/irabbi360) in [#&#8203;58380](https://github.com/laravel/framework/pull/58380) - \[12.x] Adjust PendingBatchFake to filter by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58375](https://github.com/laravel/framework/pull/58375) - \[12.x] Resolve infinite loop when using deferred queue by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58373](https://github.com/laravel/framework/pull/58373) - \[12.x] Fix and improve `\Illuminate\Support\Str` types further by [@&#8203;shaedrich](https://github.com/shaedrich) in [#&#8203;58372](https://github.com/laravel/framework/pull/58372) - \[12.x] Ensure Bus::chain filters out falsy items by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58369](https://github.com/laravel/framework/pull/58369) - \[12.x] fix invalid array doctypes for Str::replaceMatches in v12.47.0 by [@&#8203;marcreichel](https://github.com/marcreichel) in [#&#8203;58364](https://github.com/laravel/framework/pull/58364) - \[12.x] Remove useless use of `MockeryPHPUnitIntegration` by [@&#8203;lucasmichot](https://github.com/lucasmichot) in [#&#8203;58363](https://github.com/laravel/framework/pull/58363) - \[12.x] Fix: Drop indexes from failed\_jobs by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58362](https://github.com/laravel/framework/pull/58362) - Translation lines may contain square brackets and curly braces now by [@&#8203;edwinheij](https://github.com/edwinheij) in [#&#8203;58367](https://github.com/laravel/framework/pull/58367) - \[12.x] Add `skipWhen` functionality to `HandleCors` middleware by [@&#8203;RobertBoes](https://github.com/RobertBoes) in [#&#8203;58361](https://github.com/laravel/framework/pull/58361) - \[12.x] Fix backward compatibility with third-party guards, again by [@&#8203;daniser](https://github.com/daniser) in [#&#8203;58389](https://github.com/laravel/framework/pull/58389) - \[12.x] Add type tests for `\Illuminate\Support\Str` by [@&#8203;shaedrich](https://github.com/shaedrich) in [#&#8203;58365](https://github.com/laravel/framework/pull/58365) - \[12.x] `new $class` instead of reflection for better performance by [@&#8203;takaram](https://github.com/takaram) in [#&#8203;58391](https://github.com/laravel/framework/pull/58391) - \[12.x] Isolate compiled views per process during parallel testing by [@&#8203;dxnter](https://github.com/dxnter) in [#&#8203;58390](https://github.com/laravel/framework/pull/58390) - \[12.x] Fix broken import by [@&#8203;lucasmichot](https://github.com/lucasmichot) in [#&#8203;58394](https://github.com/laravel/framework/pull/58394) - \[12.x] Implement Stringable in Enum rule by [@&#8203;owenconti](https://github.com/owenconti) in [#&#8203;58392](https://github.com/laravel/framework/pull/58392) - \[12.x] Fix restoreLock for MemoizedStore by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58423](https://github.com/laravel/framework/pull/58423) - \[12.x] Fix Filesystem::sharedGet partial reads ([#&#8203;58418](https://github.com/laravel/framework/issues/58418)) by [@&#8203;sv63rus](https://github.com/sv63rus) in [#&#8203;58419](https://github.com/laravel/framework/pull/58419) - \[12.x] Add missing [@&#8203;param](https://github.com/param) docblock to ValidatedInput::\_\_isset() by [@&#8203;ismaildasci](https://github.com/ismaildasci) in [#&#8203;58410](https://github.com/laravel/framework/pull/58410) - \[12.x] Add queue to JobPopping by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58413](https://github.com/laravel/framework/pull/58413) - \[12.x] add backoff to JobReleasedAfterException event by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58414](https://github.com/laravel/framework/pull/58414) - \[12.x] Fix return type docblock for Number::abbreviate method by [@&#8203;ismaildasci](https://github.com/ismaildasci) in [#&#8203;58408](https://github.com/laravel/framework/pull/58408) - \[12.x] Annotate tuple return type of Number::pairs() by [@&#8203;ismaildasci](https://github.com/ismaildasci) in [#&#8203;58409](https://github.com/laravel/framework/pull/58409) - Bump tar from 7.4.3 to 7.5.3 in /src/Illuminate/Foundation/resources/exceptions/renderer by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;58404](https://github.com/laravel/framework/pull/58404) - \[12.x] Update return type of merge for collections by [@&#8203;ramonrietdijk](https://github.com/ramonrietdijk) in [#&#8203;58405](https://github.com/laravel/framework/pull/58405) - \[12.x] Fix missing import by [@&#8203;irabbi360](https://github.com/irabbi360) in [#&#8203;58401](https://github.com/laravel/framework/pull/58401) - \[12.x] Account for `Throwable` inside of PendingRequest by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58395](https://github.com/laravel/framework/pull/58395) - \[12.x] Allow setting flags for decoding json in the Http Client's Response by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58379](https://github.com/laravel/framework/pull/58379) - \[12.x] chore: make PruneCommand::isPrunable() protected by [@&#8203;calebdw](https://github.com/calebdw) in [#&#8203;58430](https://github.com/laravel/framework/pull/58430) - \[12.x] widen PendingRequest\@&#8203;pool() return type by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58437](https://github.com/laravel/framework/pull/58437) - \[12.x] feat: query builder aliases for expressions by [@&#8203;tpetry](https://github.com/tpetry) in [#&#8203;58436](https://github.com/laravel/framework/pull/58436) - Test Improvements by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58432](https://github.com/laravel/framework/pull/58432) - \[12.x] add BatchFinished event by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58431](https://github.com/laravel/framework/pull/58431) ### [`v12.47.0`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12480---2026-01-20) [Compare Source](https://github.com/laravel/framework/compare/v12.46.0...v12.47.0) - \[12.x] Fix missing variable reassignment by [@&#8203;nunomaduro](https://github.com/nunomaduro) in [#&#8203;58376](https://github.com/laravel/framework/pull/58376) - \[12.x] Improve PendingRequest types by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58386](https://github.com/laravel/framework/pull/58386) - \[12.x] Fix backward compatibility with third-party guards by [@&#8203;daniser](https://github.com/daniser) in [#&#8203;58385](https://github.com/laravel/framework/pull/58385) - Make \Illuminate\Testing\TestResponse::assertHeader() case insensitive by [@&#8203;HenkPoley](https://github.com/HenkPoley) in [#&#8203;58383](https://github.com/laravel/framework/pull/58383) - \[12.x] Fix TypeError when validation rule has empty parameters by [@&#8203;irabbi360](https://github.com/irabbi360) in [#&#8203;58380](https://github.com/laravel/framework/pull/58380) - \[12.x] Adjust PendingBatchFake to filter by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58375](https://github.com/laravel/framework/pull/58375) - \[12.x] Resolve infinite loop when using deferred queue by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58373](https://github.com/laravel/framework/pull/58373) - \[12.x] Fix and improve `\Illuminate\Support\Str` types further by [@&#8203;shaedrich](https://github.com/shaedrich) in [#&#8203;58372](https://github.com/laravel/framework/pull/58372) - \[12.x] Ensure Bus::chain filters out falsy items by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58369](https://github.com/laravel/framework/pull/58369) - \[12.x] fix invalid array doctypes for Str::replaceMatches in v12.47.0 by [@&#8203;marcreichel](https://github.com/marcreichel) in [#&#8203;58364](https://github.com/laravel/framework/pull/58364) - \[12.x] Remove useless use of `MockeryPHPUnitIntegration` by [@&#8203;lucasmichot](https://github.com/lucasmichot) in [#&#8203;58363](https://github.com/laravel/framework/pull/58363) - \[12.x] Fix: Drop indexes from failed\_jobs by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58362](https://github.com/laravel/framework/pull/58362) - Translation lines may contain square brackets and curly braces now by [@&#8203;edwinheij](https://github.com/edwinheij) in [#&#8203;58367](https://github.com/laravel/framework/pull/58367) - \[12.x] Add `skipWhen` functionality to `HandleCors` middleware by [@&#8203;RobertBoes](https://github.com/RobertBoes) in [#&#8203;58361](https://github.com/laravel/framework/pull/58361) - \[12.x] Fix backward compatibility with third-party guards, again by [@&#8203;daniser](https://github.com/daniser) in [#&#8203;58389](https://github.com/laravel/framework/pull/58389) - \[12.x] Add type tests for `\Illuminate\Support\Str` by [@&#8203;shaedrich](https://github.com/shaedrich) in [#&#8203;58365](https://github.com/laravel/framework/pull/58365) - \[12.x] `new $class` instead of reflection for better performance by [@&#8203;takaram](https://github.com/takaram) in [#&#8203;58391](https://github.com/laravel/framework/pull/58391) - \[12.x] Isolate compiled views per process during parallel testing by [@&#8203;dxnter](https://github.com/dxnter) in [#&#8203;58390](https://github.com/laravel/framework/pull/58390) - \[12.x] Fix broken import by [@&#8203;lucasmichot](https://github.com/lucasmichot) in [#&#8203;58394](https://github.com/laravel/framework/pull/58394) - \[12.x] Implement Stringable in Enum rule by [@&#8203;owenconti](https://github.com/owenconti) in [#&#8203;58392](https://github.com/laravel/framework/pull/58392) - \[12.x] Fix restoreLock for MemoizedStore by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58423](https://github.com/laravel/framework/pull/58423) - \[12.x] Fix Filesystem::sharedGet partial reads ([#&#8203;58418](https://github.com/laravel/framework/issues/58418)) by [@&#8203;sv63rus](https://github.com/sv63rus) in [#&#8203;58419](https://github.com/laravel/framework/pull/58419) - \[12.x] Add missing [@&#8203;param](https://github.com/param) docblock to ValidatedInput::\_\_isset() by [@&#8203;ismaildasci](https://github.com/ismaildasci) in [#&#8203;58410](https://github.com/laravel/framework/pull/58410) - \[12.x] Add queue to JobPopping by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58413](https://github.com/laravel/framework/pull/58413) - \[12.x] add backoff to JobReleasedAfterException event by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58414](https://github.com/laravel/framework/pull/58414) - \[12.x] Fix return type docblock for Number::abbreviate method by [@&#8203;ismaildasci](https://github.com/ismaildasci) in [#&#8203;58408](https://github.com/laravel/framework/pull/58408) - \[12.x] Annotate tuple return type of Number::pairs() by [@&#8203;ismaildasci](https://github.com/ismaildasci) in [#&#8203;58409](https://github.com/laravel/framework/pull/58409) - Bump tar from 7.4.3 to 7.5.3 in /src/Illuminate/Foundation/resources/exceptions/renderer by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;58404](https://github.com/laravel/framework/pull/58404) - \[12.x] Update return type of merge for collections by [@&#8203;ramonrietdijk](https://github.com/ramonrietdijk) in [#&#8203;58405](https://github.com/laravel/framework/pull/58405) - \[12.x] Fix missing import by [@&#8203;irabbi360](https://github.com/irabbi360) in [#&#8203;58401](https://github.com/laravel/framework/pull/58401) - \[12.x] Account for `Throwable` inside of PendingRequest by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58395](https://github.com/laravel/framework/pull/58395) - \[12.x] Allow setting flags for decoding json in the Http Client's Response by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58379](https://github.com/laravel/framework/pull/58379) - \[12.x] chore: make PruneCommand::isPrunable() protected by [@&#8203;calebdw](https://github.com/calebdw) in [#&#8203;58430](https://github.com/laravel/framework/pull/58430) - \[12.x] widen PendingRequest\@&#8203;pool() return type by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58437](https://github.com/laravel/framework/pull/58437) - \[12.x] feat: query builder aliases for expressions by [@&#8203;tpetry](https://github.com/tpetry) in [#&#8203;58436](https://github.com/laravel/framework/pull/58436) - Test Improvements by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58432](https://github.com/laravel/framework/pull/58432) - \[12.x] add BatchFinished event by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58431](https://github.com/laravel/framework/pull/58431) ### [`v12.46.0`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12460---2026-01-07) [Compare Source](https://github.com/laravel/framework/compare/v12.45.2...v12.46.0) - \[12.x] Add `Arr::onlyValues` and `Arr::exceptValues` by [@&#8203;stevebauman](https://github.com/stevebauman) in [#&#8203;58317](https://github.com/laravel/framework/pull/58317) - \[12.x] Fixed phpdoc of `Container::buildSelfBuildingInstance`, to prevent psalm from erroring when parsing the class by [@&#8203;nicDamours](https://github.com/nicDamours) in [#&#8203;58314](https://github.com/laravel/framework/pull/58314) - \[12.x] Add `Collection::containsManyItems()` method by [@&#8203;stevebauman](https://github.com/stevebauman) in [#&#8203;58312](https://github.com/laravel/framework/pull/58312) - \[12.x] Table prefix not applied when cloning connections by [@&#8203;dxnter](https://github.com/dxnter) in [#&#8203;58288](https://github.com/laravel/framework/pull/58288) - \[12.x] Added MySQL DDL locking options to MySQL grammar by [@&#8203;Vladelis](https://github.com/Vladelis) in [#&#8203;58293](https://github.com/laravel/framework/pull/58293) ### [`v12.45.2`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12452---2026-01-07) [Compare Source](https://github.com/laravel/framework/compare/v12.45.1...v12.45.2) - \[12.x] Feature: allow UnitEnum in has() method of Gate class by [@&#8203;webard](https://github.com/webard) in [#&#8203;58310](https://github.com/laravel/framework/pull/58310) - \[12.x] Fix `Validator::appendRules()` with pipe-separated rule strings by [@&#8203;leo108](https://github.com/leo108) in [#&#8203;58304](https://github.com/laravel/framework/pull/58304) - \[12.x] Fix calling `toArray()` on `AnonymousResourceCollection` returns an array of resources by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58302](https://github.com/laravel/framework/pull/58302) ### [`v12.45.1`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12451---2026-01-07) [Compare Source](https://github.com/laravel/framework/compare/v12.45.0...v12.45.1) - \[12.x] Fix `ResourceCollection` usage when used with an array instead of Model collection by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58299](https://github.com/laravel/framework/pull/58299) ### [`v12.45.0`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12450---2026-01-06) [Compare Source](https://github.com/laravel/framework/compare/v12.44.0...v12.45.0) - \[12.x] JSON:API Resource by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;57571](https://github.com/laravel/framework/pull/57571) - \[12.x] Add static constructor to guest middleware by [@&#8203;rodrigopedra](https://github.com/rodrigopedra) in [#&#8203;58204](https://github.com/laravel/framework/pull/58204) - \[12.x] Include JsonResource in `ModelInspector` result by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58205](https://github.com/laravel/framework/pull/58205) - \[12.x] Add queue paused / resume events by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58202](https://github.com/laravel/framework/pull/58202) - \[12.x] Add attachment helper method to add attachment from cloud storage by [@&#8203;PhiloNL](https://github.com/PhiloNL) in [#&#8203;58201](https://github.com/laravel/framework/pull/58201) - \[12.x] Normalize APP\_URL when generating filesystem URLs by [@&#8203;congkv](https://github.com/congkv) in [#&#8203;58210](https://github.com/laravel/framework/pull/58210) - \[12.x] Adjust AuthDatabaseTokenRepositoryTest by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58206](https://github.com/laravel/framework/pull/58206) - \[12.x] Refactor `queuePaused` logic by [@&#8203;amirhshokri](https://github.com/amirhshokri) in [#&#8203;58215](https://github.com/laravel/framework/pull/58215) - Fix queue:listen timeout false positives after system sleep/wake by [@&#8203;ranjith67](https://github.com/ranjith67) in [#&#8203;58216](https://github.com/laravel/framework/pull/58216) - Change the remember cookie to store a MAC of the users password hash instead of their real password hash by [@&#8203;Synchro](https://github.com/Synchro) in [#&#8203;58107](https://github.com/laravel/framework/pull/58107) - Add connection details to QueryException error messages by [@&#8203;mathiasgrimm](https://github.com/mathiasgrimm) in [#&#8203;58218](https://github.com/laravel/framework/pull/58218) - \[12.x] Adjust README test status badge by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58222](https://github.com/laravel/framework/pull/58222) - \[12.x] Use constant for session ID length by [@&#8203;miladev95](https://github.com/miladev95) in [#&#8203;58224](https://github.com/laravel/framework/pull/58224) - \[12.x] Add type tests for PendingRequest.php by [@&#8203;shaedrich](https://github.com/shaedrich) in [#&#8203;58232](https://github.com/laravel/framework/pull/58232) - feat: fire JobAttempted for sync jobs too by [@&#8203;veeshpath](https://github.com/veeshpath) in [#&#8203;58228](https://github.com/laravel/framework/pull/58228) - \[12.x] Adjust getEventDispatcher docblock to allow null return by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58242](https://github.com/laravel/framework/pull/58242) - \[12.x] Extract `JobAttempted` event dispatch to a separate method in `SyncQueue` by [@&#8203;amirhshokri](https://github.com/amirhshokri) in [#&#8203;58240](https://github.com/laravel/framework/pull/58240) - \[12.x] ValidationException: update redirectTo property definition to include null by [@&#8203;cheack](https://github.com/cheack) in [#&#8203;58238](https://github.com/laravel/framework/pull/58238) - \[12.x] Add BackedEnum support for session keys by [@&#8203;ahinkle](https://github.com/ahinkle) in [#&#8203;58241](https://github.com/laravel/framework/pull/58241) - \[12.x] Update `upload-artifact` action by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58250](https://github.com/laravel/framework/pull/58250) - \[12.x] Allow BackedEnum for Cache keys by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58246](https://github.com/laravel/framework/pull/58246) - \[12.x] Add CommandFailed event and listenForFailures() for Redis connections by [@&#8203;miladev95](https://github.com/miladev95) in [#&#8203;58251](https://github.com/laravel/framework/pull/58251) - \[12.x] Fix: Change BackedEnum to UnitEnum in Authorizable trait by [@&#8203;webard](https://github.com/webard) in [#&#8203;58258](https://github.com/laravel/framework/pull/58258) - \[12.x]Refactor: remove if and replace ? by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58256](https://github.com/laravel/framework/pull/58256) - \[12.x]Feat(MustVerifyEmail): add markEmailAsNotVerified() by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58255](https://github.com/laravel/framework/pull/58255) - \[12.x] Feat: add havingNotBetween && orHavingBetween && orHavingNotBetween by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58259](https://github.com/laravel/framework/pull/58259) - \[12.x] Formatting by [@&#8203;amirhshokri](https://github.com/amirhshokri) in [#&#8203;58266](https://github.com/laravel/framework/pull/58266) - \[12.x] Refactor: add |null in dock block by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58268](https://github.com/laravel/framework/pull/58268) - Add type guard for ChainedBatch/Queueable chained property before array\_shift by [@&#8203;cyppe](https://github.com/cyppe) in [#&#8203;58264](https://github.com/laravel/framework/pull/58264) - \[12.x] Add lang attributes to mail layout by [@&#8203;DBawazir2002](https://github.com/DBawazir2002) in [#&#8203;58274](https://github.com/laravel/framework/pull/58274) - \[12.x] Clean up `Builder` docblocks by [@&#8203;amirhshokri](https://github.com/amirhshokri) in [#&#8203;58270](https://github.com/laravel/framework/pull/58270) - \[12.x] Run Mockery cleanup via PHPUnit subscriber instead of explicit `m::close()` calls by [@&#8203;lucasmichot](https://github.com/lucasmichot) in [#&#8203;58278](https://github.com/laravel/framework/pull/58278) - \[12.x] Fix delayed Redis queue jobs with phpredis serialization enabled by [@&#8203;iazaran](https://github.com/iazaran) in [#&#8203;58235](https://github.com/laravel/framework/pull/58235) - \[12.x] Add missing return type to Arr::array() by [@&#8203;mischasigtermans](https://github.com/mischasigtermans) in [#&#8203;58280](https://github.com/laravel/framework/pull/58280) - \[12.x] Add --readable flag to env:encrypt for visible key names by [@&#8203;mathiasgrimm](https://github.com/mathiasgrimm) in [#&#8203;58262](https://github.com/laravel/framework/pull/58262) - \[12.x] Update fake method parameter type for disk by [@&#8203;murilo-plantae](https://github.com/murilo-plantae) in [#&#8203;58285](https://github.com/laravel/framework/pull/58285) - \[12.x] Fix typo in BelongsToMany::createOrFirst method name by [@&#8203;mischasigtermans](https://github.com/mischasigtermans) in [#&#8203;58284](https://github.com/laravel/framework/pull/58284) - \[12.x] Fix nth(), split() and splitIn() to throw InvalidArgumentException for invalid parameters by [@&#8203;mischasigtermans](https://github.com/mischasigtermans) in [#&#8203;58283](https://github.com/laravel/framework/pull/58283) - \[12.x] Fix Str::chopStart() and Str::chopEnd() returning empty string when given empty needle by [@&#8203;mischasigtermans](https://github.com/mischasigtermans) in [#&#8203;58286](https://github.com/laravel/framework/pull/58286) - \[12.x] Add AsBinary castable class by [@&#8203;plumthedev](https://github.com/plumthedev) in [#&#8203;58254](https://github.com/laravel/framework/pull/58254) - \[12.x] Add enum to `persistentFake()`- and add tests by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58287](https://github.com/laravel/framework/pull/58287) - Update Inspiring Qoute's author name by [@&#8203;kerog](https://github.com/kerog) in [#&#8203;58292](https://github.com/laravel/framework/pull/58292) - \[12.x] Fix: add `@throws \InvalidArgumentException` to some dock block by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;58289](https://github.com/laravel/framework/pull/58289) - \[12.x] Fix `Validator::sometimes()` usage with attributes containing `.` by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58291](https://github.com/laravel/framework/pull/58291) - \[12.x] Support "where subquery between values" by [@&#8203;gdebrauwer](https://github.com/gdebrauwer) in [#&#8203;58290](https://github.com/laravel/framework/pull/58290) - Capture PDO read / write type for query events by [@&#8203;timacdonald](https://github.com/timacdonald) in [#&#8203;58156](https://github.com/laravel/framework/pull/58156) ### [`v12.44.0`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12440---2025-12-23) [Compare Source](https://github.com/laravel/framework/compare/v12.43.1...v12.44.0) - \[12.x] Allow easier opting out of `DatabaseLock` prune lottery by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58152](https://github.com/laravel/framework/pull/58152) - \[12.x] Specify that the query builder returns instances of `stdClass` by [@&#8203;axlon](https://github.com/axlon) in [#&#8203;58150](https://github.com/laravel/framework/pull/58150) - \[12.x] feat: add now methods to Date rule by [@&#8203;calebdw](https://github.com/calebdw) in [#&#8203;58059](https://github.com/laravel/framework/pull/58059) - \[12.x] Add ability to run callbacks after building an Http response by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58088](https://github.com/laravel/framework/pull/58088) - Fix docblocks by [@&#8203;timacdonald](https://github.com/timacdonald) in [#&#8203;58157](https://github.com/laravel/framework/pull/58157) - \[12.x] Fix Password::required() missing value validation and nullable empty … by [@&#8203;faisuc](https://github.com/faisuc) in [#&#8203;58158](https://github.com/laravel/framework/pull/58158) - \[12.x] Fixup Eloquent `Collection` (param) docblocks by [@&#8203;jnoordsij](https://github.com/jnoordsij) in [#&#8203;58170](https://github.com/laravel/framework/pull/58170) - \[12.x] add MigrationSkipped event by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58167](https://github.com/laravel/framework/pull/58167) - \[12.x] Simplify `LazyCollection` `passthru` calls and docblocks by [@&#8203;jnoordsij](https://github.com/jnoordsij) in [#&#8203;58180](https://github.com/laravel/framework/pull/58180) - \[12.x] Add BusBatchable tests by [@&#8203;miladev95](https://github.com/miladev95) in [#&#8203;58175](https://github.com/laravel/framework/pull/58175) - Add previous locale to LocaleUpdated event by [@&#8203;OutlawPlz](https://github.com/OutlawPlz) in [#&#8203;58179](https://github.com/laravel/framework/pull/58179) - \[12.x] Fix inline mail embed replacement by Content-ID by [@&#8203;dxnter](https://github.com/dxnter) in [#&#8203;58173](https://github.com/laravel/framework/pull/58173) - \[12.x] Fix multibyte string handling in chopStart and chopEnd by [@&#8203;mdariftiens](https://github.com/mdariftiens) in [#&#8203;58183](https://github.com/laravel/framework/pull/58183) - \[12.x] Improve `Collection` docblock types by [@&#8203;jnoordsij](https://github.com/jnoordsij) in [#&#8203;58176](https://github.com/laravel/framework/pull/58176) - \[12.x] Fix unable to disable `created_at` or `updated_at` column when attaching models by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58164](https://github.com/laravel/framework/pull/58164) - Remove unused variables from destructured arrays by [@&#8203;rolfvandekrol](https://github.com/rolfvandekrol) in [#&#8203;58187](https://github.com/laravel/framework/pull/58187) - \[12.x] use process to trigger package uninstall event by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58177](https://github.com/laravel/framework/pull/58177) - \[12.x] Fix null array key deprecation in HasOneOrMany relation matching by [@&#8203;serhiilabs](https://github.com/serhiilabs) in [#&#8203;58191](https://github.com/laravel/framework/pull/58191) - \[12.x] Fix `Password::required()` and `Password::sometimes()` usage as array by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58188](https://github.com/laravel/framework/pull/58188) - \[12.x] Add TestResponse::assertHeaderContains assertion and tests by [@&#8203;miladev95](https://github.com/miladev95) in [#&#8203;58200](https://github.com/laravel/framework/pull/58200) - \[12.x] Update setup-node action to v6 by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58196](https://github.com/laravel/framework/pull/58196) ### [`v12.43.1`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12431---2025-12-16) [Compare Source](https://github.com/laravel/framework/compare/v12.43.0...v12.43.1) - \[12.x] Only exclude Command ending with `Test` isn't an instance of `Command` by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58147](https://github.com/laravel/framework/pull/58147) ### [`v12.43.0`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12430---2025-12-16) [Compare Source](https://github.com/laravel/framework/compare/v12.42.0...v12.43.0) - \[12.x] Add PHPDoc callable types for BusFake methods by [@&#8203;alies-dev](https://github.com/alies-dev) in [#&#8203;58070](https://github.com/laravel/framework/pull/58070) - Improve type annotations of `$batchId` in `Batchable` trait by [@&#8203;markieo1](https://github.com/markieo1) in [#&#8203;58069](https://github.com/laravel/framework/pull/58069) - \[12.x] Fix deadlock in cache\_locks on cleanup by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58071](https://github.com/laravel/framework/pull/58071) - feat: implement 'assertFailedDependency' response assertion by [@&#8203;artengin](https://github.com/artengin) in [#&#8203;58061](https://github.com/laravel/framework/pull/58061) - \[12.x] Fix using `null` cache store triggering PHP 8.5 deprecation by [@&#8203;jnoordsij](https://github.com/jnoordsij) in [#&#8203;58074](https://github.com/laravel/framework/pull/58074) - \[12.x] Fix deprecated usage of passing `null` to `array_key_exists` in `AsPivot` class by [@&#8203;jnoordsij](https://github.com/jnoordsij) in [#&#8203;58073](https://github.com/laravel/framework/pull/58073) - \[12.x] Simplify clearing resolved instances for `Facade` classes by [@&#8203;jnoordsij](https://github.com/jnoordsij) in [#&#8203;58072](https://github.com/laravel/framework/pull/58072) - \[12.x] Add PHP 8.5 with Herd to passthrough variables in ServeCommand by [@&#8203;bashgeek](https://github.com/bashgeek) in [#&#8203;58080](https://github.com/laravel/framework/pull/58080) - \[12.x] Update actions/checkout v4 to v6 by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58078](https://github.com/laravel/framework/pull/58078) - \[12.x] Let Storage::fake() accept enum as disk name by [@&#8203;bbredewold](https://github.com/bbredewold) in [#&#8203;58076](https://github.com/laravel/framework/pull/58076) - Improve PHPDoc return type for synchronous HTTP Client methods by [@&#8203;khaled-sadek](https://github.com/khaled-sadek) in [#&#8203;58090](https://github.com/laravel/framework/pull/58090) - \[12.x] Adjust testCanRetrieveAllFailedJobs by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58096](https://github.com/laravel/framework/pull/58096) - \[12.x] Allow Factory connection method to accept null by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58108](https://github.com/laravel/framework/pull/58108) - \[12.x] Make PendingDispatch::afterResponse conditional by [@&#8203;kenneth-saey](https://github.com/kenneth-saey) in [#&#8203;58099](https://github.com/laravel/framework/pull/58099) - \[12.x] Add `mergeHidden` and `mergeVisible` methods to Collection class by [@&#8203;mahmoudmohamedramadan](https://github.com/mahmoudmohamedramadan) in [#&#8203;58110](https://github.com/laravel/framework/pull/58110) - Added "SSL error: unexpected eof" message to LostConnectionDetector by [@&#8203;GuidoHendriks](https://github.com/GuidoHendriks) in [#&#8203;58113](https://github.com/laravel/framework/pull/58113) - \[12.x] Update git-auto-commit action by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58118](https://github.com/laravel/framework/pull/58118) - \[12.x] Add tests for Support Uri class by [@&#8203;miladev95](https://github.com/miladev95) in [#&#8203;58114](https://github.com/laravel/framework/pull/58114) - \[12.x] Make the Client Response class tappable by [@&#8203;kevinb1989](https://github.com/kevinb1989) in [#&#8203;58115](https://github.com/laravel/framework/pull/58115) - \[12.x] Add missing docblock param in FailedOver event docblocks by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58123](https://github.com/laravel/framework/pull/58123) - \[12.x] Clean up DynamoDbStore by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58116](https://github.com/laravel/framework/pull/58116) - \[12.x] Fix: Handle `ParseError` in `hasEvenNumberOfParentheses` when Xdebug is active by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58128](https://github.com/laravel/framework/pull/58128) - \[12.x] Fix Password::required() to fail when value is missing by [@&#8203;faisuc](https://github.com/faisuc) in [#&#8203;58125](https://github.com/laravel/framework/pull/58125) - \[12.x] Add HigherOrderProxy tests (Collection & Tap) by [@&#8203;miladev95](https://github.com/miladev95) in [#&#8203;58138](https://github.com/laravel/framework/pull/58138) - \[12.x] Run `ConnectionEstablished` event on database reconnection by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58136](https://github.com/laravel/framework/pull/58136) ### [`v12.42.0`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12420---2025-12-09) [Compare Source](https://github.com/laravel/framework/compare/v12.41.1...v12.42.0) - \[12.x] Improve `Context::scope()` return type by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58012](https://github.com/laravel/framework/pull/58012) - \[12.x] Allow float values in duration helpers for CarbonInterval by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;58006](https://github.com/laravel/framework/pull/58006) - Add whenTableHasIndex and whenTableDoesntHaveIndex to Builder by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;58005](https://github.com/laravel/framework/pull/58005) - \[12.x] Add commandFileFinder method and exclude test files from command discovery by [@&#8203;davidhemphill](https://github.com/davidhemphill) in [#&#8203;58017](https://github.com/laravel/framework/pull/58017) - \[12.x] Fix Cache spy not working with memoized cache by [@&#8203;faisuc](https://github.com/faisuc) in [#&#8203;57996](https://github.com/laravel/framework/pull/57996) - Respect --quiet and --silent in queue:work command by [@&#8203;MatusBoa](https://github.com/MatusBoa) in [#&#8203;58024](https://github.com/laravel/framework/pull/58024) - \[12.x] Improve Blueprint docblocks with concrete value ranges for integer and text columns by [@&#8203;nguyentranchung](https://github.com/nguyentranchung) in [#&#8203;58019](https://github.com/laravel/framework/pull/58019) - \[12.x] Modernize typecasting by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58037](https://github.com/laravel/framework/pull/58037) - \[12.x] Fix `required` and `sometimes` validation of `Password` rule by [@&#8203;mrvipchien](https://github.com/mrvipchien) in [#&#8203;58034](https://github.com/laravel/framework/pull/58034) - \[12.x] Add support as a depdency for container by [@&#8203;adrum](https://github.com/adrum) in [#&#8203;58026](https://github.com/laravel/framework/pull/58026) - fix autoloading StringableObjectStub class in tests/Support/SupportStringableTest.php by [@&#8203;angus-mcritchie](https://github.com/angus-mcritchie) in [#&#8203;58030](https://github.com/laravel/framework/pull/58030) - \[12.x] Remove calls to `optional()` by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58027](https://github.com/laravel/framework/pull/58027) - \[12.x] Add `newRequest()` to Pool and Batch by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58038](https://github.com/laravel/framework/pull/58038) - \[12.x] Align Listener docblock and add unit test for query shape by [@&#8203;miladev95](https://github.com/miladev95) in [#&#8203;58040](https://github.com/laravel/framework/pull/58040) - \[12.x] feat: add pre-migration hook when setting up databases in parallel tests by [@&#8203;philipheimboeck](https://github.com/philipheimboeck) in [#&#8203;58011](https://github.com/laravel/framework/pull/58011) - \[12.x] Supports PHPUnit 12.5 by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58042](https://github.com/laravel/framework/pull/58042) - \[12.x] Add support for Enums in Translator replacements by [@&#8203;hosni](https://github.com/hosni) in [#&#8203;58048](https://github.com/laravel/framework/pull/58048) - \[12.x] Fix `PendingRequest@pool()` && `batch()` concurrency by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57973](https://github.com/laravel/framework/pull/57973) - \[12.x] New `illuminate/reflections` component from `illuminate/support` by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58052](https://github.com/laravel/framework/pull/58052) - Make queue commands' option descriptions more consistent by [@&#8203;jasonlbeggs](https://github.com/jasonlbeggs) in [#&#8203;58058](https://github.com/laravel/framework/pull/58058) - \[12.x] Add LICENSE, auto close for PRs and `.gitattributes` to `illuminate/reflection` by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;58055](https://github.com/laravel/framework/pull/58055) - \[12.x] `PendingRequest@withRequestContext()` by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;58054](https://github.com/laravel/framework/pull/58054) ### [`v12.41.1`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12411---2025-12-03) [Compare Source](https://github.com/laravel/framework/compare/v12.41.0...v12.41.1) ### [`v12.41.0`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12410---2025-12-03) [Compare Source](https://github.com/laravel/framework/compare/v12.40.2...v12.41.0) - \[12.x] Add `throwUnless()` to `Illuminate\Http\Client\Response` by [@&#8203;CasEbb](https://github.com/CasEbb) in [#&#8203;57951](https://github.com/laravel/framework/pull/57951) - \[12.x] Fix deprecation error in `HasAttributes::addDateAttributesToArray()` when `UPDATED_AT = null` and model is cast to array by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;57945](https://github.com/laravel/framework/pull/57945) - \[12.x] Reduce indentation in `PendingRequest@send()` with an early return by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57943](https://github.com/laravel/framework/pull/57943) - \[12.x] PendingRequest HTTP methods may also return promises by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57941](https://github.com/laravel/framework/pull/57941) - \[12.x] Fix unable to flush redis tagged cache when prefix contains `-` instead of `_` by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;57927](https://github.com/laravel/framework/pull/57927) - fix: hasMorph/whereDoesntHaveMorph OR grouping with nullable morphs by [@&#8203;hannrei](https://github.com/hannrei) in [#&#8203;57937](https://github.com/laravel/framework/pull/57937) - \[12.x] Flush only active buffers while streaming response using a generator by [@&#8203;vaishnavyogesh](https://github.com/vaishnavyogesh) in [#&#8203;57952](https://github.com/laravel/framework/pull/57952) - Fix substrReplace to be multibyte safe by [@&#8203;Nasim25](https://github.com/Nasim25) in [#&#8203;57936](https://github.com/laravel/framework/pull/57936) - \[12.x] fixes static analysis error by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57953](https://github.com/laravel/framework/pull/57953) - \[12.x] Pass `LoggerInterface` when constructing `RoundrobinTransport` instance by [@&#8203;jnoordsij](https://github.com/jnoordsij) in [#&#8203;57956](https://github.com/laravel/framework/pull/57956) - \[12.x] Optimize cache and cache\_locks timeout by [@&#8203;chrisnetonline](https://github.com/chrisnetonline) in [#&#8203;57966](https://github.com/laravel/framework/pull/57966) - \[12.x] Introduce `FluentPromise` to allow for cleaner chaining in Pool by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57967](https://github.com/laravel/framework/pull/57967) - \[12.x] Add Dependency in JsonSchema by [@&#8203;pushpak1300](https://github.com/pushpak1300) in [#&#8203;57942](https://github.com/laravel/framework/pull/57942) - Introduce `lazy` object and `proxy` object support helpers by [@&#8203;timacdonald](https://github.com/timacdonald) in [#&#8203;57831](https://github.com/laravel/framework/pull/57831) - \[12.x] Add reload command and allow services to register by [@&#8203;barryvdh](https://github.com/barryvdh) in [#&#8203;57923](https://github.com/laravel/framework/pull/57923) - \[12.x] Ensure pretending flag is always reset in `pretend()` method by [@&#8203;xurshudyan](https://github.com/xurshudyan) in [#&#8203;57968](https://github.com/laravel/framework/pull/57968) - \[12.x] Always restore missing-attribute flag in `offsetExists()` by [@&#8203;xurshudyan](https://github.com/xurshudyan) in [#&#8203;57970](https://github.com/laravel/framework/pull/57970) - \[12.x] Fix Arr::first for ArrayObject and AsArrayObject values by [@&#8203;prince-noman](https://github.com/prince-noman) in [#&#8203;57969](https://github.com/laravel/framework/pull/57969) - \[12.x] Use displayName() for custom job identification by [@&#8203;hxnk](https://github.com/hxnk) in [#&#8203;57499](https://github.com/laravel/framework/pull/57499) - \[12.x] Expand Redis DurationLimiter tests by [@&#8203;miladev95](https://github.com/miladev95) in [#&#8203;57947](https://github.com/laravel/framework/pull/57947) - \[12.x] Fix grammar in event dispatcher comment by [@&#8203;shaedrich](https://github.com/shaedrich) in [#&#8203;57983](https://github.com/laravel/framework/pull/57983) - Modernize email template by [@&#8203;taylorotwell](https://github.com/taylorotwell) in [#&#8203;57987](https://github.com/laravel/framework/pull/57987) - \[12.x] Improve event types by [@&#8203;shaedrich](https://github.com/shaedrich) in [#&#8203;57986](https://github.com/laravel/framework/pull/57986) - \[12.x] Add ability to ignore queuePaused \ queueShouldRestart cache checks by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;57975](https://github.com/laravel/framework/pull/57975) - \[12.x] Fix cache:clear command exit code on failure by [@&#8203;alies-dev](https://github.com/alies-dev) in [#&#8203;57988](https://github.com/laravel/framework/pull/57988) - Bump mdast-util-to-hast from 13.2.0 to 13.2.1 in /src/Illuminate/Foundation/resources/exceptions/renderer by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;57994](https://github.com/laravel/framework/pull/57994) - \[12.x] Add `milliseconds`, `weeks`, and `months` duration helpers to `Illuminate\Support` by [@&#8203;SanderMuller](https://github.com/SanderMuller) in [#&#8203;57997](https://github.com/laravel/framework/pull/57997) - \[12.x] Add wildcard pattern support to TrimStrings middleware by [@&#8203;overtrue](https://github.com/overtrue) in [#&#8203;57982](https://github.com/laravel/framework/pull/57982) ### [`v12.40.2`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12402---2025-11-26) [Compare Source](https://github.com/laravel/framework/compare/v12.40.1...v12.40.2) - \[12.x] Modernize type casting by [@&#8203;lucasmichot](https://github.com/lucasmichot) in [#&#8203;57914](https://github.com/laravel/framework/pull/57914) - \[12.x] Improve missing attribute violation callable typehints by [@&#8203;mosabbirrakib](https://github.com/mosabbirrakib) in [#&#8203;57910](https://github.com/laravel/framework/pull/57910) - \[12.x] Improve discarded attribute violation callable typehints by [@&#8203;mosabbirrakib](https://github.com/mosabbirrakib) in [#&#8203;57909](https://github.com/laravel/framework/pull/57909) - \[12.x] add support for no mode in postgres full text search by [@&#8203;opheus2](https://github.com/opheus2) in [#&#8203;57915](https://github.com/laravel/framework/pull/57915) - \[12.x] Guard RedisStore::scan() results against boolean failures by [@&#8203;CicerBro](https://github.com/CicerBro) in [#&#8203;57911](https://github.com/laravel/framework/pull/57911) - \[12.x] Fix CallQueuedClosure::displayName after batch chain ([#&#8203;57597](https://github.com/laravel/framework/issues/57597)) by [@&#8203;CreareWorks](https://github.com/CreareWorks) in [#&#8203;57881](https://github.com/laravel/framework/pull/57881) - Pass Laravel context through with schedule tasks by [@&#8203;jradtilbrook](https://github.com/jradtilbrook) in [#&#8203;57918](https://github.com/laravel/framework/pull/57918) - \[12.x] Test Improvements by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;57926](https://github.com/laravel/framework/pull/57926) - \[12.x] Eloquent Builder: completion for HigherOrderBuilderProxy fields by [@&#8203;adelf](https://github.com/adelf) in [#&#8203;57928](https://github.com/laravel/framework/pull/57928) - \[12.x] fix: continue route matching rather than returning second fallbackRoute by [@&#8203;ryzr](https://github.com/ryzr) in [#&#8203;57922](https://github.com/laravel/framework/pull/57922) - \[12.x] Pause a queue for given seconds by [@&#8203;rodrigopedra](https://github.com/rodrigopedra) in [#&#8203;57917](https://github.com/laravel/framework/pull/57917) - Json Schema Contract by [@&#8203;taylorotwell](https://github.com/taylorotwell) in [#&#8203;57934](https://github.com/laravel/framework/pull/57934) ### [`v12.40.1`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12401---2025-11-25) [Compare Source](https://github.com/laravel/framework/compare/v12.40.0...v12.40.1) - Add support for instant column additions by [@&#8203;taylorotwell](https://github.com/taylorotwell) in [#&#8203;57907](https://github.com/laravel/framework/pull/57907) ### [`v12.40.0`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12400---2025-11-25) [Compare Source](https://github.com/laravel/framework/compare/v12.39.0...v12.40.0) - \[12.x] Improve return type of `Str::replace()` by [@&#8203;axlon](https://github.com/axlon) in [#&#8203;57820](https://github.com/laravel/framework/pull/57820) - \[12.x] Fixup PHP 8.5 deprecations in `SupportArrTest` by [@&#8203;jnoordsij](https://github.com/jnoordsij) in [#&#8203;57822](https://github.com/laravel/framework/pull/57822) - Add daysOfMonth() method to schedule tasks on specific days by [@&#8203;yousefkadah](https://github.com/yousefkadah) in [#&#8203;57817](https://github.com/laravel/framework/pull/57817) - \[12.x] Add `encoding` validation rule for uploaded files by [@&#8203;ziadoz](https://github.com/ziadoz) in [#&#8203;57823](https://github.com/laravel/framework/pull/57823) - \[12.x] Allow CachedState properties to be nullable by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;57826](https://github.com/laravel/framework/pull/57826) - \[12.x] Resolve failing encoding test by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;57827](https://github.com/laravel/framework/pull/57827) - \[12.x] Fixing MemoizedStore with Redis Cluster by [@&#8203;vadimonus](https://github.com/vadimonus) in [#&#8203;57828](https://github.com/laravel/framework/pull/57828) - \[12.x] Update encoding validation message by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;57834](https://github.com/laravel/framework/pull/57834) - \[12.x] Use `scopedIf` in `CacheManager::memo()` by [@&#8203;angelej](https://github.com/angelej) in [#&#8203;57833](https://github.com/laravel/framework/pull/57833) - \[12.x] Fixing RedisTaggedCache::flushStale with PhpRedisClusterConnection by [@&#8203;vadimonus](https://github.com/vadimonus) in [#&#8203;57837](https://github.com/laravel/framework/pull/57837) - \[12.x] Add default parameter support to `Request::fluent()` method by [@&#8203;michaelnabil230](https://github.com/michaelnabil230) in [#&#8203;57840](https://github.com/laravel/framework/pull/57840) - \[12.x] Fix embedded image Content-ID inconsistency in cloned emails by [@&#8203;yinheli](https://github.com/yinheli) in [#&#8203;57726](https://github.com/laravel/framework/pull/57726) - \[12.x] PredisClusterConnection::keys() by [@&#8203;vadimonus](https://github.com/vadimonus) in [#&#8203;57841](https://github.com/laravel/framework/pull/57841) - \[12.x] PHP 8.5 Compatibility by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;57835](https://github.com/laravel/framework/pull/57835) - \[12.x] RateLimiter remaining to 0 to prevent negative values. by [@&#8203;Button99](https://github.com/Button99) in [#&#8203;57851](https://github.com/laravel/framework/pull/57851) - \[12.x] Update RequestException\@&#8203;report() to return false by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57847](https://github.com/laravel/framework/pull/57847) - Time by [@&#8203;taylorotwell](https://github.com/taylorotwell) in [#&#8203;57856](https://github.com/laravel/framework/pull/57856) - Feature/queue pause resume by [@&#8203;yousefkadah](https://github.com/yousefkadah) in [#&#8203;57800](https://github.com/laravel/framework/pull/57800) - \[12.x] Fixing RedisTaggedCache::flushValues with PredisClusterConnection by [@&#8203;vadimonus](https://github.com/vadimonus) in [#&#8203;57848](https://github.com/laravel/framework/pull/57848) - \[12.x] Improve typehints for `QueriesRelationships` by [@&#8203;CasEbb](https://github.com/CasEbb) in [#&#8203;57830](https://github.com/laravel/framework/pull/57830) - \[12.x] Fix flaky test by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57864](https://github.com/laravel/framework/pull/57864) - \[12.x] optimize `AbstractRouteCollection@toSymfonyRouteCollection()` by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57870](https://github.com/laravel/framework/pull/57870) - \[12.x] optimize `AbstractRouteCollection@matchAgainstRoute()` by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57871](https://github.com/laravel/framework/pull/57871) - \[12.x] Moving redis integration tests by [@&#8203;vadimonus](https://github.com/vadimonus) in [#&#8203;57860](https://github.com/laravel/framework/pull/57860) - \[12.x] Incorrect result of MemoizedStore::many with numeric keys and empty prefix by [@&#8203;vadimonus](https://github.com/vadimonus) in [#&#8203;57862](https://github.com/laravel/framework/pull/57862) - \[12.x] Add testWrapEdgeCases for Str::wrap edge cases by [@&#8203;miladev95](https://github.com/miladev95) in [#&#8203;57861](https://github.com/laravel/framework/pull/57861) - \[12.x] Add parameter validation to Collection::sliding() method. by [@&#8203;Button99](https://github.com/Button99) in [#&#8203;57875](https://github.com/laravel/framework/pull/57875) - \[12.x] Update `path` method return type to always be a non-null string by [@&#8203;IsmailBourbie](https://github.com/IsmailBourbie) in [#&#8203;57873](https://github.com/laravel/framework/pull/57873) - Added Google's antigravity IDE support in ResolvesDumpSource.php by [@&#8203;yeasherarafath](https://github.com/yeasherarafath) in [#&#8203;57885](https://github.com/laravel/framework/pull/57885) - \[12.x] Clean up queue pausing by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57863](https://github.com/laravel/framework/pull/57863) - \[12.x] Simplify `ParsesQueue@parseQueue` logic by [@&#8203;rodrigopedra](https://github.com/rodrigopedra) in [#&#8203;57886](https://github.com/laravel/framework/pull/57886) - \[12.x] Improve lazy loading violation callable typehints by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57896](https://github.com/laravel/framework/pull/57896) - \[12.x] Fix Accept header cache invalidation when header is modified by [@&#8203;faisuc](https://github.com/faisuc) in [#&#8203;57874](https://github.com/laravel/framework/pull/57874) - \[12.x] Fix flaky test in CacheArrayStore (increment) by [@&#8203;sumaiazaman](https://github.com/sumaiazaman) in [#&#8203;57905](https://github.com/laravel/framework/pull/57905) - \[12.x] Fix flaky test in ArraySessionHandler (garbage collection) by [@&#8203;sumaiazaman](https://github.com/sumaiazaman) in [#&#8203;57904](https://github.com/laravel/framework/pull/57904) - \[12.x] Fix flaky test in ArraySessionHandler (almost expired session) by [@&#8203;sumaiazaman](https://github.com/sumaiazaman) in [#&#8203;57903](https://github.com/laravel/framework/pull/57903) - \[12.x] Fix flaky test in ArraySessionHandler (expired session) by [@&#8203;sumaiazaman](https://github.com/sumaiazaman) in [#&#8203;57902](https://github.com/laravel/framework/pull/57902) ### [`v12.39.0`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12390---2025-11-18) [Compare Source](https://github.com/laravel/framework/compare/v12.38.1...v12.39.0) - \[12.x] `ApplicationBuilder@withExceptions()` improvements by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57778](https://github.com/laravel/framework/pull/57778) - Carry `--force` to `make:test` for generators with `--test` by [@&#8203;CasEbb](https://github.com/CasEbb) in [#&#8203;57777](https://github.com/laravel/framework/pull/57777) - \[12.x] Fix `Request::getAcceptableContentTypes()` changes in Symfony 7.4 by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;57783](https://github.com/laravel/framework/pull/57783) - \[12.x] Accept string bindings in give attribute by [@&#8203;pjotrvdh](https://github.com/pjotrvdh) in [#&#8203;57747](https://github.com/laravel/framework/pull/57747) - \[12.x] Fix `WithCachedConfig` to work with parallel test runs by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57785](https://github.com/laravel/framework/pull/57785) - \[12.x] Tailwind pagination styling/accessibility updates by [@&#8203;browner12](https://github.com/browner12) in [#&#8203;57793](https://github.com/laravel/framework/pull/57793) - \[12.x] `RequestException`: attempt to summarize message before reporting by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57767](https://github.com/laravel/framework/pull/57767) - \[12.x] create new `@hasStack` Blade directive by [@&#8203;browner12](https://github.com/browner12) in [#&#8203;57788](https://github.com/laravel/framework/pull/57788) - Add `--middleware` filter to `route:list` by [@&#8203;jasonmccreary](https://github.com/jasonmccreary) in [#&#8203;57797](https://github.com/laravel/framework/pull/57797) - \[12.x] Fix stale in-memory SQLite connections after re-migration in RefreshDatabase by [@&#8203;PouyaPour](https://github.com/PouyaPour) in [#&#8203;57716](https://github.com/laravel/framework/pull/57716) - \[12.x] Type-hint the `ResourceCollection::$collection` property as nullable by [@&#8203;lorenzolosa](https://github.com/lorenzolosa) in [#&#8203;57807](https://github.com/laravel/framework/pull/57807) - \[12.x] Fix `Factory@insert()` to allow for array casts by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57794](https://github.com/laravel/framework/pull/57794) - \[12.x] Improve typehints for `Http::pool()` by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57811](https://github.com/laravel/framework/pull/57811) ### [`v12.38.1`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12381---2025-11-13) [Compare Source](https://github.com/laravel/framework/compare/v12.38.0...v12.38.1) - \[12.x] Fix `GeneratorCommand` missing `possibleModels()` method by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;57769](https://github.com/laravel/framework/pull/57769) ### [`v12.38.0`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12380---2025-11-12) [Compare Source](https://github.com/laravel/framework/compare/v12.37.0...v12.38.0) - \[12.x] Cache the result of `configurationIsCached()` by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57665](https://github.com/laravel/framework/pull/57665) - \[12.x] model:show command prompt for missing input with model suggestion by [@&#8203;mrazinshaikh](https://github.com/mrazinshaikh) in [#&#8203;57671](https://github.com/laravel/framework/pull/57671) - Don't call Model::toArray() to get attributes for factory insert by [@&#8203;riesjart](https://github.com/riesjart) in [#&#8203;57670](https://github.com/laravel/framework/pull/57670) - \[12.x] Introduce `WithCachedRoutes` testing trait by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57623](https://github.com/laravel/framework/pull/57623) - \[12.x] Add missing separators to `Stringable::ucwords` by [@&#8203;kichetof](https://github.com/kichetof) in [#&#8203;57688](https://github.com/laravel/framework/pull/57688) - \[12.x] Cache result of `Application@routesAreCached()` by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57687](https://github.com/laravel/framework/pull/57687) - fix phpdoc return of HasAttributes::getArrayAttributeWithValue by [@&#8203;chuckadams](https://github.com/chuckadams) in [#&#8203;57691](https://github.com/laravel/framework/pull/57691) - \[12.x] Remove unnecessary imports from BackgroundQueue and DeferredQueue. by [@&#8203;seriquynh](https://github.com/seriquynh) in [#&#8203;57699](https://github.com/laravel/framework/pull/57699) - \[12.x] add SQLite support for whereNotMorphedTo method by [@&#8203;faisuc](https://github.com/faisuc) in [#&#8203;57698](https://github.com/laravel/framework/pull/57698) - \[12.x] Handle AWS ElasticCache failover by reconnecting when READONLY by [@&#8203;wsamoht](https://github.com/wsamoht) in [#&#8203;57685](https://github.com/laravel/framework/pull/57685) - \[12.x] Introduce `WithCachedConfig` testing trait by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57663](https://github.com/laravel/framework/pull/57663) - \[12.x] Fix WithCachedConfig\@&#8203;tearDownWithCachedConfig() by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57708](https://github.com/laravel/framework/pull/57708) - \[12.x] Reorder some core aliases in alphabetical order. by [@&#8203;kevinb1989](https://github.com/kevinb1989) in [#&#8203;57706](https://github.com/laravel/framework/pull/57706) - Allow Resend ^1.0 by [@&#8203;ziming](https://github.com/ziming) in [#&#8203;57713](https://github.com/laravel/framework/pull/57713) - \[12.x] memoize result of `Application@eventsAreCached()` by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57709](https://github.com/laravel/framework/pull/57709) - \[12.x] Test `Factory@insert()` with hidden by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57722](https://github.com/laravel/framework/pull/57722) - \[12.x] Separate workflow for Redis integration tests by [@&#8203;vadimonus](https://github.com/vadimonus) in [#&#8203;57710](https://github.com/laravel/framework/pull/57710) - \[12.x] Types: HasDatabaseNotifications read/unread notifications by [@&#8203;liamduckett](https://github.com/liamduckett) in [#&#8203;57718](https://github.com/laravel/framework/pull/57718) - \[12.x] Supports Symfony 7.4 by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;57724](https://github.com/laravel/framework/pull/57724) - \[12.x] Revert lowercasing validation message placeholders by [@&#8203;florianraith](https://github.com/florianraith) in [#&#8203;57733](https://github.com/laravel/framework/pull/57733) - \[12.x] try another way to activate Broadcast routes by [@&#8203;browner12](https://github.com/browner12) in [#&#8203;57734](https://github.com/laravel/framework/pull/57734) - \[12.x] Add environment information to json output of schedule:list command by [@&#8203;mmachatschek](https://github.com/mmachatschek) in [#&#8203;57741](https://github.com/laravel/framework/pull/57741) - \[12.x] Make DumpCommand prohibitable by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;57735](https://github.com/laravel/framework/pull/57735) - \[12.x] Clean ConsoleApplicationTest by [@&#8203;seriquynh](https://github.com/seriquynh) in [#&#8203;57761](https://github.com/laravel/framework/pull/57761) - \[12.x] Fix the docblock of the BroadcastManager::purge method. by [@&#8203;seriquynh](https://github.com/seriquynh) in [#&#8203;57758](https://github.com/laravel/framework/pull/57758) - \[12.x] Fix setting request exception truncating doesn't work on HTTP layer when configured inside `bootstrap/app.php` by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;57759](https://github.com/laravel/framework/pull/57759) ### [`v12.37.0`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12370---2025-11-04) [Compare Source](https://github.com/laravel/framework/compare/v12.36.1...v12.37.0) - \[12.x] allow passing custom "depth" to `files()` and `directories()` by [@&#8203;browner12](https://github.com/browner12) in [#&#8203;57573](https://github.com/laravel/framework/pull/57573) - \[12.x] EnumerateValues::value() support objects and return negative values by [@&#8203;rafaelqueiroz](https://github.com/rafaelqueiroz) in [#&#8203;57570](https://github.com/laravel/framework/pull/57570) - \[12.x] Move duplicated logic to separate method to be reusable by [@&#8203;shaedrich](https://github.com/shaedrich) in [#&#8203;57564](https://github.com/laravel/framework/pull/57564) - \[12.x] Refactor unreleased data\_has helper by [@&#8203;rodrigopedra](https://github.com/rodrigopedra) in [#&#8203;57580](https://github.com/laravel/framework/pull/57580) - feat: added detailed about for cache failover driver by [@&#8203;chinmaypurav](https://github.com/chinmaypurav) in [#&#8203;57579](https://github.com/laravel/framework/pull/57579) - \[12.x] fix data\_has empty check by [@&#8203;rodrigopedra](https://github.com/rodrigopedra) in [#&#8203;57586](https://github.com/laravel/framework/pull/57586) - \[12.x] Fix: use trim before check empty string by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;57583](https://github.com/laravel/framework/pull/57583) - feat: added detailed about for queue failover driver by [@&#8203;chinmaypurav](https://github.com/chinmaypurav) in [#&#8203;57582](https://github.com/laravel/framework/pull/57582) - Feat: add mailers detail for failover or roundrobin by [@&#8203;chinmaypurav](https://github.com/chinmaypurav) in [#&#8203;57590](https://github.com/laravel/framework/pull/57590) - \[12.x] Refactor: remove un use var by [@&#8203;alipowerful7](https://github.com/alipowerful7) in [#&#8203;57617](https://github.com/laravel/framework/pull/57617) - \[12.x] `Factory@insert()` by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57600](https://github.com/laravel/framework/pull/57600) - Fix ScheduleRunCommandTest failure on Windows by using OS-specific success command by [@&#8203;Tina-1300](https://github.com/Tina-1300) in [#&#8203;57621](https://github.com/laravel/framework/pull/57621) - \[12.x] Add ucwords to Str and Stringable by [@&#8203;braxey](https://github.com/braxey) in [#&#8203;57581](https://github.com/laravel/framework/pull/57581) - \[12.x] improve `Connection@listen()` docblock by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57633](https://github.com/laravel/framework/pull/57633) - \[12.x] Fix: Correctly fallback to notification's connection/queue when using viaConnections/viaQueues by [@&#8203;aydinfatih](https://github.com/aydinfatih) in [#&#8203;57625](https://github.com/laravel/framework/pull/57625) - \[12.x] Remove unused closure parameters in DatabaseServiceProvider by [@&#8203;sumaiazaman](https://github.com/sumaiazaman) in [#&#8203;57644](https://github.com/laravel/framework/pull/57644) - \[12.x] Queue tests for Redis Cluster missing QUEUE\_CONNECTION by [@&#8203;vadimonus](https://github.com/vadimonus) in [#&#8203;57641](https://github.com/laravel/framework/pull/57641) - refactor: remove unused parameter in ArtisanServiceProvider by [@&#8203;omarchouman](https://github.com/omarchouman) in [#&#8203;57658](https://github.com/laravel/framework/pull/57658) - \[12.x] Ensure custom validation messages work for the File rule by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;57656](https://github.com/laravel/framework/pull/57656) - Feature/json schema improvements by [@&#8203;Anticom](https://github.com/Anticom) in [#&#8203;57609](https://github.com/laravel/framework/pull/57609) - Process queue jobs in background (Concurrently::defer()) by [@&#8203;barryvdh](https://github.com/barryvdh) in [#&#8203;57648](https://github.com/laravel/framework/pull/57648) - \[12.x] ChainedBatch keeps queue and connection of wrapped batch by [@&#8203;vadimonus](https://github.com/vadimonus) in [#&#8203;57630](https://github.com/laravel/framework/pull/57630) ### [`v12.36.1`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12361---2025-10-29) [Compare Source](https://github.com/laravel/framework/compare/v12.36.0...v12.36.1) - \[12.x] EnumerateValues::value() support and return negative values if exists [#&#8203;54910](https://github.com/laravel/framework/issues/54910) by [@&#8203;rafaelqueiroz](https://github.com/rafaelqueiroz) in [#&#8203;57566](https://github.com/laravel/framework/pull/57566) - \[12.x] always use the `operator` argument for `version_compare()` by [@&#8203;browner12](https://github.com/browner12) in [#&#8203;57569](https://github.com/laravel/framework/pull/57569) - \[12.x] add `allDirectories()` method to `Filesytem` by [@&#8203;browner12](https://github.com/browner12) in [#&#8203;57565](https://github.com/laravel/framework/pull/57565) - Revert "\[12.x] EnumerateValues::value() support and return negative values if exists [#&#8203;54910](https://github.com/laravel/framework/issues/54910)" by [@&#8203;taylorotwell](https://github.com/taylorotwell) in [#&#8203;57572](https://github.com/laravel/framework/pull/57572) ### [`v12.36.0`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12360---2025-10-28) [Compare Source](https://github.com/laravel/framework/compare/v12.35.1...v12.36.0) - \[12.x] Remove return void from Http\Client\Batch's constructor by [@&#8203;rodrigopedra](https://github.com/rodrigopedra) in [#&#8203;57518](https://github.com/laravel/framework/pull/57518) - \[12.x] Namespace file cache lock keys by [@&#8203;faisuc](https://github.com/faisuc) in [#&#8203;57516](https://github.com/laravel/framework/pull/57516) - \[12.x] Remove [@&#8203;return](https://github.com/return) tag from constructor by [@&#8203;noir4y](https://github.com/noir4y) in [#&#8203;57536](https://github.com/laravel/framework/pull/57536) - \[12.x] Add missing [@&#8203;throws](https://github.com/throws) annotation by [@&#8203;AhmedAlaa4611](https://github.com/AhmedAlaa4611) in [#&#8203;57535](https://github.com/laravel/framework/pull/57535) - \[12.x] allow chaining on setters by [@&#8203;browner12](https://github.com/browner12) in [#&#8203;57532](https://github.com/laravel/framework/pull/57532) - \[12.x] Stop double prefixing S3 filesystem paths by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57534](https://github.com/laravel/framework/pull/57534) - \[12.x] test `Uri` builder methods by [@&#8203;browner12](https://github.com/browner12) in [#&#8203;57549](https://github.com/laravel/framework/pull/57549) - \[12.x] Refactor `jsonSerialize()` method to use match expression by [@&#8203;amirhshokri](https://github.com/amirhshokri) in [#&#8203;57552](https://github.com/laravel/framework/pull/57552) - \[12.x] redirect response enforce same origin by [@&#8203;browner12](https://github.com/browner12) in [#&#8203;57533](https://github.com/laravel/framework/pull/57533) - \[12.x] Add Eloquent Collection methods: `setAppends` && `withoutAppends` by [@&#8203;cosmastech](https://github.com/cosmastech) in [#&#8203;57561](https://github.com/laravel/framework/pull/57561) - \[12.x] Fix buffer overflow when flushing Redis cache tags with many keys by [@&#8203;faisuc](https://github.com/faisuc) in [#&#8203;57562](https://github.com/laravel/framework/pull/57562) - \[12.x] Allow validator message placeholers to be capitalized by [@&#8203;florianraith](https://github.com/florianraith) in [#&#8203;57556](https://github.com/laravel/framework/pull/57556) - Exclude property hooks on return of Model::\_\_sleep() by [@&#8203;rafaelqueiroz](https://github.com/rafaelqueiroz) in [#&#8203;57557](https://github.com/laravel/framework/pull/57557) - \[12.x] Add concurrency control to Http::pool and Http::batch by [@&#8203;WendellAdriel](https://github.com/WendellAdriel) in [#&#8203;57555](https://github.com/laravel/framework/pull/57555) ### [`v12.35.1`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12351---2025-10-23) [Compare Source](https://github.com/laravel/framework/compare/v12.35.0...v12.35.1) - Store previous route name in session by [@&#8203;taylorotwell](https://github.com/taylorotwell) in [#&#8203;57477](https://github.com/laravel/framework/pull/57477) - \[12.x] Update CSS in minimal exception view. by [@&#8203;FoksVHox](https://github.com/FoksVHox) in [#&#8203;57490](https://github.com/laravel/framework/pull/57490) - \[12.x] Ensure HTTP batch results are returned in the same order as requested by [@&#8203;jessarcher](https://github.com/jessarcher) in [#&#8203;57483](https://github.com/laravel/framework/pull/57483) - \[12.x] Correct `Response` namespace in `Batch` by [@&#8203;simon-tma](https://github.com/simon-tma) in [#&#8203;57481](https://github.com/laravel/framework/pull/57481) - \[12.x] Rename NamedScope to Scope by [@&#8203;AhmedAlaa4611](https://github.com/AhmedAlaa4611) in [#&#8203;57478](https://github.com/laravel/framework/pull/57478) - Fix S3 adapter to use correct path separator and update related tests by [@&#8203;Kleppinger](https://github.com/Kleppinger) in [#&#8203;57497](https://github.com/laravel/framework/pull/57497) - \[12.x] Replace Bootcamp with Laravel Learn by [@&#8203;AhmedAlaa4611](https://github.com/AhmedAlaa4611) in [#&#8203;57506](https://github.com/laravel/framework/pull/57506) - \[12.x] Pass exception to `QueueFailedOver` event by [@&#8203;jessarcher](https://github.com/jessarcher) in [#&#8203;57503](https://github.com/laravel/framework/pull/57503) - \[12.x] Add warning when server workers cannot be respected by [@&#8203;timacdonald](https://github.com/timacdonald) in [#&#8203;57482](https://github.com/laravel/framework/pull/57482) - \[12.x] Emit underlying store name in cache events when using failover by [@&#8203;jessarcher](https://github.com/jessarcher) in [#&#8203;57505](https://github.com/laravel/framework/pull/57505) ### [`v12.35.0`](https://github.com/laravel/framework/blob/HEAD/CHANGELOG.md#v12350---2025-10-21) [Compare Source](https://github.com/laravel/framework/compare/v12.34.0...v12.35.0) - \[12.x] Fix `DB::update()` with subqueries is not supported for all databases by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;57381](https://github.com/laravel/framework/pull/57381) - \[12.x] Ensure custom validation messages work for AnyOf, Can and Enum by [@&#8203;jackbayliss](https://github.com/jackbayliss) in [#&#8203;57356](https://github.com/laravel/framework/pull/57356) - Added Neovim editor support in ResolvesDumpSource by [@&#8203;cseknowledge](https://github.com/cseknowledge) in [#&#8203;57392](https://github.com/laravel/framework/pull/57392) - Add clickable file reference for thrown exception by [@&#8203;jasonmccreary](https://github.com/jasonmccreary) in [#&#8203;57400](https://github.com/laravel/framework/pull/57400) - \[12.x] Render newlines in query tooltip by [@&#8203;faisuc](https://github.com/faisuc) in [#&#8203;57310](https://github.com/laravel/framework/pull/57310) - \[12.x] Add SQS FIFO and fair queue messageGroup() method support by [@&#8203;patrickcarlohickman](https://github.com/patrickcarlohickman) in [#&#8203;57421](https://github.com/laravel/framework/pull/57421) - \[12.x] Use MariaDB idiomatic `json_value()` by [@&#8203;crishoj](https://github.com/crishoj) in [#&#8203;57417](https://github.com/laravel/framework/pull/57417) - Deferred queue by [@&#8203;taylorotwell](https://github.com/taylorotwell) in [#&#8203;57428](https://github.com/laravel/framework/pull/57428) - Fix validate integer php doc type annotation by [@&#8203;tei0110](https://github.com/tei0110) in [#&#8203;57435](https://github.com/laravel/framework/pull/57435) - \[12.x] Fix passing countable to Number::format() by [@&#8203;riesjart](https://github.com/riesjart) in [#&#8203;57434](https://github.com/laravel/framework/pull/57434) - \[12.x] Update `Route::middleware` to accept null by [@&#8203;avosalmon](https://github.com/avosalmon) in [#&#8203;57436](https://github.com/laravel/framework/pull/57436) - Only replace first basePath occurrence in dump source href by [@&#8203;fritz-c](https://github.com/fritz-c) in [#&#8203;57458](https://github.com/laravel/framework/pull/57458) - \[12.x] Add missing [@&#8203;throws](https://github.com/throws) annotations to Encrypter class by [@&#8203;sumaiazaman](https://github.com/sumaiazaman) in [#&#8203;57451](https://github.com/laravel/framework/pull/57451) - \[12.x] Add missing [@&#8203;throws](https://github.com/throws) annotations to Database Connection class by [@&#8203;sumaiazaman](https://github.com/sumaiazaman) in [#&#8203;57452](https://github.com/laravel/framework/pull/57452) - \[12.x] Test Improvements by [@&#8203;crynobone](https://github.com/crynobone) in [#&#8203;57461](https://github.com/laravel/framework/pull/57461) - Prevent TypeError in validateDigits when attribute value is an array by [@&#8203;elyass-dehghan](https://github.com/elyass-dehghan) in [#&#8203;57471](https://github.com/laravel/framework/pull/57471) - Bump vite from 7.1.6 to 7.1.11 in /src/Illuminate/Foundation/resources/exceptions/renderer by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;57460](https://github.com/laravel/framework/pull/57460) - Failover cache by [@&#8203;taylorotwell](https://github.com/taylorotwell) in [#&#8203;57430](https://github.com/laravel/framework/pull/57430) - Must collect the unparsed event and payload when deferring events by [@&#8203;moshe-autoleadstar](https://github.com/moshe-autoleadstar) in [#&#8203;57453](https://github.com/laravel/framework/pull/57453) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4wLjYiLCJ1cGRhdGVkSW5WZXIiOiI0My4wLjYiLCJ0YXJnZXRCcmFuY2giOiJ0cnVuayIsImxhYmVscyI6WyIwVHlwZS9EZXBlbmRlbmNpZXMiLCIxRGVwZW5kZW5jeS9Db21wb3NlciIsIjJEZXBlbmRlbmN5LUltcGFjdC9NYWpvciJdfQ==-->
Update dependency laravel/framework to v13
Some checks failed
renovate/artifacts Artifact file update failure
ci/woodpecker/push/sonarcube Pipeline was successful
ci/woodpecker/pr/sonarcube Pipeline was successful
ci/woodpecker/pull_request_metadata/sonarcube Pipeline was successful
4584b2f5dd
Author
Collaborator

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: composer.lock
Command failed: composer update laravel/framework:13.0.0 --with-dependencies --ignore-platform-req=ext-* --ignore-platform-req=lib-* --no-ansi --no-interaction --no-scripts --no-autoloader --no-plugins --minimal-changes
Loading composer repositories with package information
Dependency guzzlehttp/guzzle is also a root requirement. Package has not been listed as an update argument, so keeping locked at old version. Use --with-all-dependencies (-W) to include root dependencies.
Dependency league/commonmark is also a root requirement. Package has not been listed as an update argument, so keeping locked at old version. Use --with-all-dependencies (-W) to include root dependencies.
Updating dependencies
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Root composer.json requires laravel/framework ^13.0, found laravel/framework[v13.0.0] but these were not loaded, likely because it conflicts with another require.
  Problem 2
    - pestphp/pest-plugin-laravel is locked to version v4.0.0 and an update of this package was not requested.
    - pestphp/pest-plugin-laravel v4.0.0 requires laravel/framework ^11.45.2|^12.25.0 -> found laravel/framework[v11.45.2, ..., v11.50.0, v12.25.0, ..., v12.55.0] but it conflicts with your root composer.json require (^13.0).

Use the option --with-all-dependencies (-W) to allow upgrades, downgrades and removals for packages currently locked to specific versions.

### ⚠️ Artifact update problem Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is. ♻ Renovate will retry this branch, including artifacts, only when one of the following happens: - any of the package files in this branch needs updating, or - the branch becomes conflicted, or - you click the rebase/retry checkbox if found above, or - you rename this PR's title to start with "rebase!" to trigger it manually The artifact failure details are included below: ##### File name: composer.lock ``` Command failed: composer update laravel/framework:13.0.0 --with-dependencies --ignore-platform-req=ext-* --ignore-platform-req=lib-* --no-ansi --no-interaction --no-scripts --no-autoloader --no-plugins --minimal-changes Loading composer repositories with package information Dependency guzzlehttp/guzzle is also a root requirement. Package has not been listed as an update argument, so keeping locked at old version. Use --with-all-dependencies (-W) to include root dependencies. Dependency league/commonmark is also a root requirement. Package has not been listed as an update argument, so keeping locked at old version. Use --with-all-dependencies (-W) to include root dependencies. Updating dependencies Your requirements could not be resolved to an installable set of packages. Problem 1 - Root composer.json requires laravel/framework ^13.0, found laravel/framework[v13.0.0] but these were not loaded, likely because it conflicts with another require. Problem 2 - pestphp/pest-plugin-laravel is locked to version v4.0.0 and an update of this package was not requested. - pestphp/pest-plugin-laravel v4.0.0 requires laravel/framework ^11.45.2|^12.25.0 -> found laravel/framework[v11.45.2, ..., v11.50.0, v12.25.0, ..., v12.55.0] but it conflicts with your root composer.json require (^13.0). Use the option --with-all-dependencies (-W) to allow upgrades, downgrades and removals for packages currently locked to specific versions. ```
Some checks failed
renovate/artifacts Artifact file update failure
ci/woodpecker/push/sonarcube Pipeline was successful
ci/woodpecker/pr/sonarcube Pipeline was successful
ci/woodpecker/pull_request_metadata/sonarcube Pipeline was successful
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin renovate/laravel-framework-13.x:renovate/laravel-framework-13.x
git switch renovate/laravel-framework-13.x

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch trunk
git merge --no-ff renovate/laravel-framework-13.x
git switch renovate/laravel-framework-13.x
git rebase trunk
git switch trunk
git merge --ff-only renovate/laravel-framework-13.x
git switch renovate/laravel-framework-13.x
git rebase trunk
git switch trunk
git merge --no-ff renovate/laravel-framework-13.x
git switch trunk
git merge --squash renovate/laravel-framework-13.x
git switch trunk
git merge --ff-only renovate/laravel-framework-13.x
git switch trunk
git merge renovate/laravel-framework-13.x
git push origin trunk
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
l4p1n-bot/website!107
No description provided.