Laravel Framework v10
https://github.com/laravel/framework
- [10.x] Fix
Dispatcher::until
return type by @Neol3108 in https://github.com/laravel/framework/pull/47585 - [10.x] Add Collection::wrap to add method on BatchFake by @schonhoff in https://github.com/laravel/framework/pull/47589
- [10.x] Fixes grammar in FoundationServiceProvider by @adampatterson in https://github.com/laravel/framework/pull/47593
- [10.x] Ensure duration is present by @timacdonald in https://github.com/laravel/framework/pull/47596
- [10.x] Add test for
withCookies
method in RedirectResponse by @milwad-dev in https://github.com/laravel/framework/pull/47383 - [10.x] Add new error message "SSL: Handshake timed out" handling to PDO Deteā¦ by @yehorherasymchuk in https://github.com/laravel/framework/pull/47392
- [10.x] Add new error messages for detecting lost connections by @mfn in https://github.com/laravel/framework/pull/47398
- [10.x] Update phpdoc
except
method in Middleware by @milwad-dev in https://github.com/laravel/framework/pull/47408 - [10.x] Fix inconsistent type hint for
$passwordTimeoutSeconds
by @devfrey in https://github.com/laravel/framework/pull/47414 - Change visibility of
path
method in FileStore.php by @foremtehan in https://github.com/laravel/framework/pull/47413 - [10.x] Fix return type of
buildException
method by @milwad-dev in https://github.com/laravel/framework/pull/47422 - [10.x] Allow serialization of NotificationSent by @cosmastech in https://github.com/laravel/framework/pull/47375
- [10.x] Incorrect comment in
PredisConnector
andPhpRedisConnector
by @hungthai1401 in https://github.com/laravel/framework/pull/47438 - [10.x] Can set custom Response for denial within
Gate@inspect()
by @cosmastech in https://github.com/laravel/framework/pull/47436 - [10.x] Remove unnecessary param in
addSingletonUpdate
by @milwad-dev in https://github.com/laravel/framework/pull/47446 - [10.x] Fix return type of
prefixedResource
&prefixedResource
by @milwad-dev in https://github.com/laravel/framework/pull/47445 - [10.x] Add Factory::getNamespace() by @tylernathanreed in https://github.com/laravel/framework/pull/47463
- [10.x] Add
whenAggregated
method toConditionallyLoadsAttributes
trait by @akr4m in https://github.com/laravel/framework/pull/47417 - [10.x] Add PendingRequest
withHeader()
method by @ralphjsmit in https://github.com/laravel/framework/pull/47474 - [10.x] Fix $exceptTables to allow an array of table names by @cwilby in https://github.com/laravel/framework/pull/47477
- [10.x] Fix
eachById
onHasManyThrough
relation by @cristiancalara in https://github.com/laravel/framework/pull/47479 - [10.x] Allow object caching to be disabled for custom class casters by @CalebDW in https://github.com/laravel/framework/pull/47423
- [10.x] "Can" validation rule by @stevebauman in https://github.com/laravel/framework/pull/47371
- [10.x] refactor(Parser.php): Removing the extra "else" statement by @saMahmoudzadeh in https://github.com/laravel/framework/pull/47483
- [10.x] Add
UncompromisedVerifier::class
toprovides()
inValidationServiceProvider
by @xurshudyan in https://github.com/laravel/framework/pull/47500 - [9.x] Fix SES V2 Transport "reply to" addresses by @jacobmllr95 in https://github.com/laravel/framework/pull/47522
- [10.x] Reindex appends attributes by @hungthai1401 in https://github.com/laravel/framework/pull/47519
- [10.x] Fix
ListenerMakeCommand
deprecations by @dammy001 in https://github.com/laravel/framework/pull/47517 - [10.x] Add
HandlesPotentiallyTranslatedString
trait by @xurshudyan in https://github.com/laravel/framework/pull/47488 - [10.x] update [JsonResponse]: using match expression instead of if-elseif-else by @saMahmoudzadeh in https://github.com/laravel/framework/pull/47524
- [10.x] Add
withQueryParameters
to the HTTP client by @mnapoli in https://github.com/laravel/framework/pull/47297 - [10.x] Allow
%
symbol in component attribute names by @JayBizzle in https://github.com/laravel/framework/pull/47533 - [10.x] Fix Http client pool return type by @srdante in https://github.com/laravel/framework/pull/47530
- [10.x] Use
match
expression inresolveSynchronousFake
by @osbre in https://github.com/laravel/framework/pull/47540 - [10.x] Use
match
expression incompileHaving
by @osbre in https://github.com/laravel/framework/pull/47548 - [10.x] Use
match
expression ingetArrayableItems
by @osbre in https://github.com/laravel/framework/pull/47549 - [10.x] Fix return type in
SessionGuard
by @PerryvanderMeer in https://github.com/laravel/framework/pull/47553 - [10.x] Fix return type in
DatabaseQueue
by @PerryvanderMeer in https://github.com/laravel/framework/pull/47552 - [10.x] Fix return type in
DumpCommand
by @PerryvanderMeer in https://github.com/laravel/framework/pull/47556 - [10.x] Fix return type in
MigrateMakeCommand
by @PerryvanderMeer in https://github.com/laravel/framework/pull/47557 - [10.x] Add missing return to
Factory
by @PerryvanderMeer in https://github.com/laravel/framework/pull/47559 - [10.x] Update doc in Eloquent model by @alirezasalehizadeh in https://github.com/laravel/framework/pull/47562
- [10.x] Fix return types by @PerryvanderMeer in https://github.com/laravel/framework/pull/47561
- [10.x] Fix PHPDoc throw type by @fernandokbs in https://github.com/laravel/framework/pull/47566
- [10.x] Add hasAny function to ComponentAttributeBag, Allow multiple keys in has function by @indykoning in https://github.com/laravel/framework/pull/47569
- [10.x] Ensure captured time is in configured timezone by @timacdonald in https://github.com/laravel/framework/pull/47567
- [10.x] Add Method to Report only logged exceptions by @joelharkes in https://github.com/laravel/framework/pull/47554
- [10.x] Add global middleware to
Http
client by @timacdonald in https://github.com/laravel/framework/pull/47525 - [9.x] Fixes unable to use
trans()->has()
on JSON language files. by @crynobone in https://github.com/laravel/framework/pull/47582
- Revert "[10.x] Update Kernel::load() to use same
classFromFile
logic as events" by @taylorotwell in https://github.com/laravel/framework/pull/47382
- Narrow down array type for
$attributes
inCastsAttributes
by @devfrey in https://github.com/laravel/framework/pull/47365 - Add test for
assertViewHasAll
method by @milwad-dev in https://github.com/laravel/framework/pull/47366 - Fix
schedule:list
to display named Jobs by @liamkeily in https://github.com/laravel/framework/pull/47367 - Support
ConditionalRules
withinNestedRules
by @cosmastech in https://github.com/laravel/framework/pull/47344 - Small test fixes by @stevebauman in https://github.com/laravel/framework/pull/47369
- Pluralisation typo in queue:clear command output by @sebsobseb in https://github.com/laravel/framework/pull/47376
- Add getForeignKeyFrom method by @iamgergo in https://github.com/laravel/framework/pull/47378
- Add shouldHashKeys to ThrottleRequests middleware by @fosron in https://github.com/laravel/framework/pull/47368
Added
- Added
Illuminate/Http/Client/PendingRequest::replaceHeaders()
(#47335) - Added
Illuminate/Notifications/Messages/MailMessage::attachMany()
(#47345)
Reverted
- Revert "[10.x] Remove session on authenticatable deletion v2" (#47354)
Fixed
- Fixes usage of Redis::many() with empty array (#47307)
- Fix mapped renderable exception handling (#47347)
- Avoid duplicates in fillable/guarded on merge in Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php (#47351)
Changed
v10.13.1 (2023-06-02)
Added
- Added
Illuminate\Contracts\Database\Query\ConditionExpression
interface and functional for this (#47210) - Added return type for
Illuminate/Notifications/Channels/MailChannel::send()
(#47310)
Reverted
- Revert "[10.x] Fix inconsistentcy between report and render methods" (#47326)
Changed
- Display queue runtime in human readable format (#47227)
Added
- Added
Illuminate/Hashing/HashManager::isHashed()
(#47197) - Escaping functionality within the Grammar (#46558)
- Provide testing hooks in
Illuminate/Support/Sleep.php
(#47228) - Added missing methods to AssertsStatusCodes (#47277)
- Wrap response preparation in events (#47229)
Fixed
- Fixed bug when function wrapped around definition of related factory (#47168)
- Fixed inconsistentcy between report and render methods (#47201)
- Fixes Model::isDirty() when AsCollection or AsEncryptedCollection have arguments (#47235)
- Fixed escaped String for JSON_CONTAINS (#47244)
- Fixes missing output on ProcessFailedException exception (#47285)
Changed
- Remove useless else statements (#47186)
- RedisStore improvement - don't open transaction unless all values are serialaizable (#47193)
- Use carbon::now() to get current timestamp in takeUntilTimeout lazycollection-method (#47200)
- Avoid duplicates in visible/hidden on merge (#47264)
- Add a missing semicolon to CompilesClasses (#47280)
- Send along value to InvalidPayloadException (#47223)
Added
- Added
Illuminate/Queue/Events/JobTimedOut.php
(#47068) - Added
when()
andunless()
methods toIlluminate/Support/Sleep
(#47114) - Adds inline attachments support for markdown mailables (#47140)
- Added
Illuminate/Testing/Concerns/AssertsStatusCodes::assertMethodNotAllowed()
(#47169) - Added
forceCreateQuietly
method (#47162) - Added parameters to timezone validation rule (#47171)
Fixed
- Fixes singleton and api singletons creatable|destryoable|only|except combinations (#47098)
- Don't use empty key or secret for DynamoDBClient (#47144)
Changed
- Remove session on authenticatable deletion (#47141)
- Added error handling and ensure re-enabling of foreign key constraints in
Illuminate/Database/Schema/Builder::withoutForeignKeyConstraints()
(#47182)
Refactoring
- Remove useless else statements (#47161)
Added
- Added the ability to extend the generic types for DatabaseNotificationCollection (#47048)
- Added
/Illuminate/Support/Carbon::createFromId()
(#47046) - Added Name attributes on slots (#47065)
- Added Precognition-Success header (#47081)
- Added Macroable trait to Sleep class (#47099)
Fixed
- Fixed
Illuminate/Database/Console/ShowModelCommand::getPolicy()
(#47043)
Changed
Added
- Added
/Illuminate/Collections/Arr::mapWithKeys()
(#47000) - Added
dd
anddump
methods toIlluminate/Support/Carbon.php
(#47002) - Added
Illuminate/Queue/Failed/FileFailedJobProvider
(#47007) - Added arguments to the signed middleware to ignore properties (#46987)
Fixed
- Added keys length check to prevent mget error in
Illuminate/Cache/RedisStore::many()
(#46998) - 'hashed' cast - do not rehash already hashed value (#47029)
Changed
Added
- Added
$isolated
andisolatedExitCode
properties toIlluminate/Console/Command
(#46925) - Added ability to restore/set Global Scopes (#46922)
- Added
Illuminate/Collections/Arr::sortRecursiveDesc()
(#46945) - Added
Illuminate/Support/Sleep
(#46904, #46963) - Added
Illuminate/Database/Eloquent/Concerns/HasAttributes::castAttributeAsHashedString()
([#46947]https://github.com/laravel/framework/pull/46947) - Added url support for mail config (#46964)
Fixed
- Fixed replace missing_unless (89ac58a)
- Gracefully handle invalid code points in e() (#46914)
- HasCasts returning false instead of true (#46992)
Changed
- Use method on UploadedFile to validate image dimensions (#46912)
- Expose Js::json() helper (#46935)
- Respect parents on middleware priority (#46972)
- Do reconnect when redis throws connection lost error (#46989)
- Throw timeoutException instead of maxAttemptsExceededException when a job times out (#46968)
Added
- Add new HTTP status assertions (#46841)
- Allow pruning all cancelled and unfinished queue batches (#46833)
- Added
IGNITION_LOCAL_SITES_PATH
to$passthroughVariables
inServeCommand.php
(#46857) - Added named static methods for middleware (#46362)
Fixed
- Fix date_format rule throw ValueError (#46824)
Changed
- Allow separate directory for locks on filestore (#46811)
- Allow to whereMorphedTo work with null model (#46821)
- Use pivot model fromDateTime instead of assuming Carbon in
Illuminate/Database/Eloquent/Relations/Concerns/InteractsWithPivotTable::addTimestampsToAttachment()
(#46822) - Make rules method in FormRequest optional (#46846)
- Throw LogicException when calling FileFactory@image() if mimetype is not supported (#46859)
- Improve job release method to accept date instance (#46854)
- Use foreignUlid if model uses HasUlids trait when call foreignIdFor (#46876)
Added
- Added syntax sugar to the Process::pipe method (#46745)
- Allow specifying index name when calling ForeignIdColumnDefinition@constrained() (#46746)
- Allow to customise redirect URL in AuthenticateSession Middleware (#46752)
- Added Class based after validation rules (#46757)
- Added max exceptions to broadcast event (#46800)
Fixed
- Fixed compiled view file ends with .php (#46755)
- Fix validation rule names (#46768)
- Fixed validateDecimal() (#46809)
Changed
Changed
- Changed
Illuminate/Process/Factory::pipe()
method. It will be run pipes immediately (e34ab39)
Added
- Allow
Illuminate/Foundation/Testing/WithFaker
to be used when app is not bound (#46529) - Allow Event::assertListening to check for invokable event listeners (#46683)
- Added
Illuminate/Process/Factory::pipe()
(#46527) - Added
Illuminate/Validation/Validator::setValue
(#46716)
Fixed
- PHP 8.0 fix for Closure jobs (#46505)
- Fix preg_split error when there is a slash in the attribute in
Illuminate/Validation/ValidationData
(#46549) - Fixed Cache::spy incompatibility with Cache::get (#46689)
- server command: Fixed server Closing output on invalid $requestPort (#46726)
- Fix nested join when not JoinClause instance (#46712)
- Fix query builder whereBetween method with carbon date period (#46720)
Changed
Added
- Added ability to set a custom class for the AsCollection and AsEncryptedCollection casts (#46619)
Changed
Added
- Added
Illuminate/Cache/CacheManager::setApplication()
(#46594)
Fixed
- Fix infinite loading on batches list on Horizon (#46536)
- Fix whereNull queries with raw expressions for the MySql grammar (#46538)
- Fix getDirty method when using AsEnumArrayObject / AsEnumCollection (#46561)
Changed
- Skip
Illuminate/Support/Reflector::isParameterBackedEnumWithStringBackingType
for non ReflectionNamedType (#46511) - Replace Deprecated DBAL Comparator creation with schema aware Comparator (#46517)
- Added Storage::json() method to read and decode a json file (#46548)
- Force cast json decoded failed_job_ids to array in DatabaseBatchRepository (#46581)
- Handle empty arrays for DynamoDbStore multi-key operations (#46579)
- Stop adding constraints twice on *Many to *One relationships via one() (#46575)
- allow override of the Builder paginate() total (#46415)
- Add a possibility to set a custom on_stats function for the Http Facade (#46569)
Added
- Added
Illuminate/Testing/Concerns/AssertsStatusCodes::assertUnsupportedMediaType()
(#46426) - Added curl_error_code: 77 to DetectsLostConnections (#46429)
- Allow for converting a HasMany to HasOne && MorphMany to MorphOne (#46443)
- Add option to create macroable method for paginationInformation (#46461)
- Added
Illuminate/Filesystem/Filesystem::json()
(#46481)
Fixed
- Fix parsed input arguments for command events using dispatcher rerouting (#46442)
- Fix enums uses with optional implicit parameters (#46483)
- Fix deprecations for embedded images in symfony mailer (#46488)
Changed
- Added alternative database port in Postgres DSN (#46403)
- Allow calling getControllerClass on closure-based routes (#46411)
- Remove obsolete method_exists(ReflectionClass::class, 'isEnum') call (#46445)
- Convert eloquent builder to base builder in whereExists (#46460)
- Refactor shared static methodExcludedByOptions method to trait (#46498)
Reverted
Added
- Adding Pipeline Facade (#46271)
- Add Support for SaveQuietly and Upsert with UUID/ULID Primary Keys (#46161)
- Add charAt method to both Str and Stringable (#46349, dfb59bc2)
- Adds Countable to the InvokedProcessPool class (#46346)
- Add processors to logging (placeholders) (#46344)
Fixed
- Fixed
Illuminate/Mail/Mailable::buildMarkdownView()
(791f8ea7) - FIX on CanBeOneOfMany trait giving erroneous results (#46309)
Changed
Added
- Adding
Conditionable
train to Logger (#46259) - Added "dot" method to Illuminate\Support\Collection class (#46265)
- Added a "channel:list" command (#46248)
- Added JobPopping and JobPopped events (#46220)
- Add isMatch method to Str and Stringable helpers (#46303)
- Add ArrayAccess to Stringable (#46279)
Reverted
- Revert "[10.x] Fix custom themes not reseting on Markdown renderer" (#46328)
Fixed
- Fix typo in function
createMissingSqliteDatbase
name insrc/Illuminate/Database/Console/Migrations/MigrateCommand.php
(#46326)
Changed
- Generate default command name based on class name in
ConsoleMakeCommand
(#46256) - Do not mutate underlying values on redirect (#46281)
- Do not use null to initialise $lastExecutionStartedAt in
ScheduleWorkCommand
(#46285) - Remove obsolete function_exists('enum_exists') calls (#46319)
- Cast json decoded failed_job_ids to array in DatabaseBatchRepository::toBatch (#46329)
Please consult the upgrade guide and release notes in the official Laravel documentation.