- Improved the reflector (#33184)
- Fixed
Illuminate\Database\Eloquent\Relations\MorphToMany::getCurrentlyAttachedPivots()
(110b129)
- Support PHP 8's reflection API (#33039)
- Fixed
Illuminate\Database\Eloquent\Collection::getQueueableRelations()
(00e9ed7) - Fixed bug with update existing pivot and polymorphic many to many (684208b)
- Added
Illuminate\Http\Middleware\TrustHosts
(9229264)
- Revert of "Remove
strval
fromIlluminate/Validation/ValidationRuleParser::explodeWildcardRules()
" (52940cf) - Fixed Queued Mail MessageSent Listener With Attachments (#32795)
- Added error clearing before sending in
Illuminate\Mail\Mailer::sendSwiftMessage()
(#32799) - Avoid foundation function call in the auth component (#32805)
- Added explicit
symfony/polyfill-php73
dependency (5796b1e) - Set
Cache\FileStore
file permissions only once (#32845, 11c533b)
- Added SSL SYSCALL EOF as a lost connection message (#32697)
- Fixed
FakerGenerator
Unique caching issue (#32703) - Added boolean to types that don't need character options (#32716)
- Fixed
Illuminate\Foundation\Testing\PendingCommand
that do not resolve 'OutputStyle::class' from the container (#32687) - Clear resolved event facade on
Illuminate\Foundation\Testing\Concerns\MocksApplicationServices::withoutEvents()
(d1e7f85) - Fixed deprecated "Doctrine/Common/Inflector/Inflector" class (#32734)
- Remove the undocumented dot keys support in validators (#32764)
- Remove
strval
fromIlluminate/Validation/ValidationRuleParser::explodeWildcardRules()
1c76a6f
- Fixed
Illuminate\Database\Eloquent\Collection::getQueueableRelations()
(7b32460)
- Add pdo try again as lost connection message (#32605)
- Fixed
Illuminate\Foundation\Testing\TestResponse::assertSessionHasInput()
(f0639fd) - Set relation connection on eager loaded MorphTo (#32602)
- Fixed
Illuminate\Database\Schema\Grammars\SqlServerGrammar::compileDropDefaultConstraint()
was ignoring Table prefixes (#32606) - Filtering null's in
hasMorph()
(#32614) - Fixed
Illuminate\Console\Scheduling\Schedule::compileParameters()
(cfc3ac9, 36e215d) - Fixed bug with model name in
Illuminate\Database\Eloquent\RelationNotFoundException::make()
(f72a166) - Fixed
Illuminate\Foundation\Testing\TestResponse::assertJsonCount()
not accepting falsey keys (#32655)
- Changed
Illuminate/Database/Eloquent/Relations/Concerns/AsPivot::fromRawAttributes()
(6c502c1) - Restore оnly common relations (#32613, d82f78b, 48e4d60)
- Use single space if plain email is empty in
Illuminate\Mail\Mailer::addContent()
(0557622) - Remove wasted file read when loading package manifest in
Illuminate\Foundation\PackageManifest::getManifest()
(#32646) - Cache
FakerGenerator
instances (#32585) - Do not change
character
andcollation
for some columns on change (fccdf7c)
- Auth with each master on flushdb (d0afa58)
- Clear resolved facades earlier (f2ea1a2)
- Register opis key so it is not tied to a deferred service provider (a4574ea)
- Pass status code to schedule finish (b815dc6)
- Fix firstWhere behavior for relations (#32525)
- Fixed boolean value in
Illuminate\Foundation\Testing\TestResponse::assertSessionHasErrors()
(#32555)
- Check if object (1b0bdb4)
- Removed dots (e78d24f)
- Duplicated mailable in-memory data attachments with different names (#32392)
- Fix a regression caused by #32315 (#32388)
- Duplicated mailable storage attachments with different names (#32394)
- Call setlocale (1c6a504)
- Use a map to prevent unnecessary array access (#32296)
- Prevent timestamp update when pivot is not dirty (#32311)
- Add support for the new composer installed.json format (#32310)
- ValidatesAttributes::validateUrl use Symfony/Validator 5.0.7 regex (#32315)
- Fix *scan methods for phpredis (#32336)
- Use the router for absolute urls (#32345)
- Prevent insecure characters in locale (c248521)
- Revert "Fix setting mail header" (#32278)
- Added missing return in the sendNow pending mail fake (#32095)
- Prevent long URLs from breaking email layouts (#32189)
- Fix setting mail header (#32272)
- Corrected suggested dependencies (#32072, c01a70e)
- Avoid deadlock in test when sharing process group (#32067)
- Fixed scheduler dependency assumptions (#31894)
- Corrected suggested dependencies (bb0ec42)
- Unset
pivotParent
onPivot::unsetRelations()
(#31956) - Fixed
cookie
helper signature , matching matchCookieFactory
(#31974)
- Fixed array lock release behavior (#31795)
- Fixed model restoring right after being soft deleting (#31719)
- Fixed phpredis "zadd" and "exists" on cluster (#31838)
- Fixed "srid" mysql schema (#31852)
- Fixed Microsoft ODBC lost connection handling (#31879)
- Added
Arr::hasAny()
method (#31636)
- Use correct locale when resolving Faker from the container (#31615)
- Fixed loading deferred providers for binding interfaces and implementations (#31629, 1764ff7)
- Make
newPivotQuery()
method public (#31677) - Allowed easier customization of the queued mailable job (#31684)
- Expose Notification Id within Message Data in
Illuminate\Notifications\Channels\MailChannel
(#31632)
- Don`t do chmod in File cache in case if permission not set (#31593)
- Allowed private-encrypted pusher channels (#31559, ceabaef, 8215e0d)
- Added file
permission
config option for the File cache store (#31579) - Added
Connection refused
andrunning with the --read-only option so it cannot execute this statement
toDetectsLostConnections
(#31539)
- Fixed issue
Content Type not specified
(#31533)
- Allowed
cache
helper to have an optionalexpiration
parameter (#31554) - Allowed passing of strings to
TestResponse::dumpSession()
method (#31583) - Consider mailto: and tel: links in the subcopy actionUrl label in emails (#31523, 641a7cd)
- Exclude mariaDB from database queue support for new SKIP LOCKED (fff96e7)
- Added Guzzle 7 support (#31484)
- Added
Illuminate\Database\Query\Builder::groupByRaw()
(#31498) - Added SQLite JSON update support with json_patch (#31492)
- Fixed
appendRow
on console table (#31469) - Fixed password check in
EloquentUserProvider::retrieveByCredentials()
(4436662)
- Revert table feature in the console output (4094d78)
- Change MySql nullable modifier to allow generated columns to be not null (#31452)
- Throw exception on empty collection in
assertSentTo()
\assertNotSentTo()
methods inNotificationFake
class (#31471)
- Added
whereNull
andwhereNotNull
toCollection
(#31425) - Added
Illuminate\Foundation\Testing\MockStream
class (#31447)
- Fixed
event:list
command for shows non-registered events (#31444) - Fixed postgres grammar for nested json arrays with (#31448, b3d0da1)
- Added
Illuminate\Auth\Events\Validated
event (#31357, 7ddac28) - Make
Blueprint
support Grammar'smacro
(#31365) - Added
Macroable
trait toIlluminate\Console\Scheduling\Schedule
class (#31354) - Added support
dispatchAfterResponse
inBusFake
(#31418, e59597f) - Added
Illuminate\Foundation\Exceptions\Handler::getHttpExceptionView()
(#31420) - Allowed appending of rows to Artisan tables (#31426)
- Fixed
locks
forsqlsrv
queue (5868066) - Fixed
Illuminate\Events\Dispatcher::hasListeners()
(#31403, c80302e) - Fixed testing with unencrypted cookies (#31390)
- Allowed multiple paths to be passed to migrate fresh and migrate refresh commands (#31381)
- Split Console InteractsWithIO to external trait (#31376)
- Added sms link as valid URL in
UrlGenerator::isValid()
method (#31382) - Upgrade CommonMark and use the bundled table extension (#31411)
- Ensure
Application::$terminatingCallbacks
are reset onApplication::flush()
(#31413) - Remove serializer option in
PhpRedisConnector::createClient()
(#31417)
- Added
Illuminate\Bus\Dispatcher::dispatchAfterResponse()
method (#31300, 8a3cdb0) - Added
Illuminate\Support\Testing\Fakes\QueueFake::assertPushedWithoutChain()
method (#31332, 7fcc6b5) - Added
Macroable
trait to theIlluminate\Events\Dispatcher
(#31317) - Added
NoPendingMigrations
event (#31289, 739fcea)
- Used current DB to create Doctrine Connections (#31278)
- Removed duplicate output when publishing tags in
vendor:publish
command (#31333) - Fixed plucking column name containing a space (#31299)
- Fixed bug with wildcard caching in event dispatcher (#31313)
- Fixed infinite value for RedisStore (#31348)
- Fixed dropping columns in SQLServer with default value (#31341)
- Use SKIP LOCKED for mysql 8.1 and pgsql 9.5 queue workers (#31287)
- Dont merge middleware from method and property in
Illuminate\Bus\Queueable::middleware()
(#31301) - Split
specifyParameter()
fromIlluminate\Console\Command
toHasParameters
trait (#31254) - Make sure changing a database field to json does not include charset (#31343)
- Fixed error on
queue:work
database on Windows (#31277)
- Added
--api
option to themake:model
command (#31197, #31222) - Added
PendingResourceRegistration::shallow()
method (#31208, 104c539) - Allowed formatting an implicit attribute using a closure (#31246)
- Added
Filesystem::ensureDirectoryExists()
method (8a8eed4) - Added support to
Storage::url()
for the Ftp driver (#31258, b8790e5)
- Fixed laravel migrations when migrating to sql server (dropColumn with default value) (#31229)
- Fixed
handleBeginTransactionException()
method calling pdo property instead of getPdo() method (#31233) - Fixed channel names when broadcasting via redis (#31261)
- Replace asterisks before validation (#31257)
- Reset timeout handler after worker loop (#31198)
- Added
ServiceProvider::loadFactoriesFrom()
method (#31133) - Added
TestResponse::dumpSession()
method (#31131) - Added
Str::isUuid()
method (#31148) - Restored phpunit 7 support (#31113)
- Added
Request::boolean()
method (#31160) - Added
Database\Eloquent\FactoryBuilder::createMany()
(#31171, 6553d59) - Added missing options for PhpRedis (#31182)
- Fixed
Cache\RedisLock::acquire()
(#31168, 8683a3d) - Fixed database url parsing for connections with no database specified (#31185)
- Prevent ambiguous column with table name prefix (#31174)
- Fixed memory usage on downloading large files (#31163)
- Replace Event Dispatcher in resolved cache repositories when
Event::fake()
is used (#31119, 0a70beb)
- Added
Illuminate\Database\Eloquent\Builder::firstWhere()
method (#31089) - Redis Broadcaster: Broadcast to multiple channels at once (#31108)
- Fixed undefined property in
WithFaker::makeFaker()
(#31083) - Fixed
Str::afterLast()
method (#31095) - Fixed insert float into MySQL with PHP 7.3 (#31100)
- Fixed refresh on Model with customized pivot attribute name (#31125, 678b26b)
- Remove all indentation in blade templates (917ee51)
- Added mailable names to assertion messages in
MailFake::assertNothingSent()
andMailFake::assertNothingQueued()
(#31106) - Search for similar results in
assertDatabaseHas()
(#31042, 2103eb7)
- Updated some blade templates (f17e347)
- Added
withoutMix()
andwithMix()
test helpers (#30900) - Added
validateWithBag()
macro toRequest
(#30896) - Added PHPUnit 9 support (#30947, #30989)
- Added
exclude_if
andexclude_unless
validation rules (#30835, c0fdb56) - Added generated columns (virtual/stored) support for PostgreSQL (#30971)
- Added
mixin
support to Eloquent builder (#30978, 28fa74e) - Make the Redis Connection
Macroable
(#31020) - Added
PackageManifest::config()
method (#31039, 9b73540) - Added
redis.connection
aliases in container (#31034) - Extracted
CallsCommands
feature fromIlluminate\Console\Command
(#31026, ef72716) - Allowed absolute file path for
Storage::putFile()
(#31040)
- Handled passing too many arguments to
@slot
(#30893, 878f159) - Make
ThrottleRequestsException
extendTooManyRequestsHttpException
(#30943) - Used
league/commonmark
instead oferusev/parsedown
for mail markdown (#30982) - Regenerate token on logout (b2af428)
- Make
RedisQueue::getConnection()
public (#31016) - Resolve
Faker\Generator
out of the container if it is bound (#30992)
- Fixed
float
database types inBlueprint
(#30891) - Fixed code that depended on
getenv()
(#30924) - Prevented making actual pdo connections while reconnecting (#30998)
- Fixed
exclude_if
\exclude_unless
validation rules for nested data (#31006) - Update
dev-master
branch aliases from6.0-dev
to6.x-dev
(d06cc79) - Utilize Symfony’s PSR Factory. Fixed #31017 (#31018, #31027)
- Used model connection by default in the database validators (#31037)
- Optimize Service Provider registration (#30960)
- Optimize
runningInConsole
method (#30922) - Delay instantiation of translator and view factory (#31009)
- Deprecate
PendingMail::sendNow()
and remove unneeded check (#30999)
- Refactoring of
BladeCompiler::compileString()
method (08887f9)
- Added
MIME
type argument toTesting/FileFactory::create()
(#30870) - Added
seed
toall
option when creating the model (make:model
command) (#30874) - Allowed configurable emergency logger (#30873)
- Added
prependMiddlewareToGroup()
/appendMiddlewareToGroup()
/prependToMiddlewarePriority()
/appendToMiddlewarePriority()
toKernal
for manipulating middleware (6f33feb)
- Reverted Added
Model::setRawAttribute()
(#30885)
- Fixed
Builder::withCount()
binding error when a scope is added into related model with binding in a sub-select (#30869)
- Dont throw exception when session is not set in
AuthenticateSession
middleware (4de1d24)
- Allowed packages to use custom markdown mail themes (#30814, 2206d52)
- Added more quotes to
Inspiring
(4a7d566, 9693ced) - Added support for nested arrays in
TestResponse::assertViewHas()
(#30837) - Added
Model::setRawAttribute()
(#30853) - Added
--force
option to themake:controller
resource (#30856) - Allowed passing an array to
Resource::collection()
(#30800) - Implemented ArrayAccess on
JsonResponse
andTestResponse
(#30817) - Added
--seed
option to themake::model
resource (#30828, 2cd9417)
- Fixed two index creation instead of one when using
change()
(#30843) - Prevent duplicate attachments in the
Mailable
(3c8ccc2) - Fixed
ServiceProvider
for PHP 7.4 inLumen
(#30819) - Fixed non-eloquent model validation in database validation rules (#30840)
- Changed
rescue()
helper (#30838) - Added previous exception to
EntryNotFoundException
thrown inContainer.php
(#30862) - Changed
DatabaseNotification::$keyType
to matchuuid
(#30823)
- Added
getQualifiedCreatedAtColumn()
andgetQualifiedUpdatedAtColumn()
methods toHasTimestamps
concern (#30792) - Added
exceptionContext()
method to theExceptions\Handler
(#30780) - Added ability for postmark transport to throw errors (#30799, 4320b82)
- Added
withoutRelations()
andunsetRelations()
methods toHasRelationships
(#30802) - Added
ResourceCollection::preserveQueryParameters()
for preserve query parameters on paginated api resources (#30745, e92a708)
- Fixed explicit models in string-based database validation rules (#30790)
- Fixed
Routing\RedirectController()
(#30783)
- Reconnect
PhpRedisConnection
on connection missing (#30778) - Improved ShouldBroadcastNow performance (#30797, 5b3cc97)
- Added
Illuminate\Support\Facades\Facade::partialMock()
method (#30754) - Added of support
retryAfter
option on queued listeners (#30743)
- Fixed zero parameter for routes (#30768)
- Changed
getAllViews()
method visibility fromprotected
topublic
in all schema builders (#30757)
- Added
setInput()
andsetOutput()
methods toIlluminate\Console\Command
(#30706)
- Fixed RouteUrlGenerator with empty string for required parameter (#30714)
- Force usage getting timestamps columns in model (#30697)
- Allowed explicit Model definitions in database rules (#30653, 9beceac)
- Allowed
ResponseFactory::view()
to return first view (#30651) - Added
Foundation\Testing\Concerns\InteractsWithDatabase::assertDeleted()
method (#30648) - Added
Illuminate\Routing\Router::head()
(#30646) - Added
wherePivotNotIn()
andorWherePivotNotIn()
methods toBelongsToMany
(#30671) - Added options in
SqlServerConnector
to encrypt data with Azure Key vault (#30636)
- Fixed errors in
Illuminate\Http\Testing\FileFactory::create()
(#30632) - Fixed routing bug that causes missing parameters to be ignored (#30659)
- Updated error message in
PhpRedisConnector::createClient()
if redis extension is not loaded (#30673, 184a0f4) - Updated
windows_os()
helper to use PHP_OS_FAMILY (#30660)
- Allowed model serialization on jobs for typed properties (#30604, #30605, 920c364)
- Allowed fallback when facade root accessor has previously been resolved (#30616)
- Added support for separation between
geometry
andgeography
types forPostgres
(#30545) - Added
createWithContent()
method toIlluminate\Http\Testing\File
andIlluminate\Http\Testing\FileFactory
(2cc6fa3, 181db51)
- Improved
PostgresGrammar::formatPostGisType()
method readability (#30593)
- Added
symfony/debug
dependency toilluminate/pipeline
(#30611) - Override
BelongsToMany::cursor()
to hydrate pivot relations (#30580) - Ignore Redis prefix when verifying channel access in RedisBroadcaster (#30597, d77ce36)
- Added
includeUnless
Blade directive (#30538)
- Fixed default value for $count in
PhpRedisConnection::spop()
method (#30546) - Fixed breaking compatibility with multi-schema postgres (#30562, 6460d2b)
- Fixed
Model::isDirty()
withcollection
/object
casts (#30565) - Fixed
bcc
inMailgunTransport::send()
(#30569)
- Added
LazyCollection::remember()
method (#30443) - Added
Str::afterLast()
andStr::beforeLast()
methods (#30507) - Added
existsOr()
anddoesntExistOr()
methods to the query builder (#30495) - Added
unless
condition to Blade customif
directives (#30492)
- Added reconnect if missing connection when beginning transaction (#30474)
- Set Redis cluster prefix with PhpRedis (#30461)
- Added
ScheduledTaskSkipped
event when a scheduled command was filtered from running (#30407) - Added
Login timeout expired
toDetectsLostConnections
(#30362) - Added
missing
method toIlluminate\Filesystem\Filesystem
andIlluminate\Filesystem\FilesystemAdapter
classes (#30441)
- Make
vendor:publish
command more informative (#30408, 65d040d) - Accepted underscores URL in the
URL
validator (#30417) - Updated
artisan down
output to be consistent withartisan up
(#30422) - Changed
!empty
toisset
for changing redis database (#30420) - Throw an exception when signing route got in parameter keys
signature
(#30444, 71af732)
- Fixed of retrieving view config in
ServiceProvider::loadViewsFrom()
for Lumen (#30404)
- Added
missing()
method toRequest
class (#30320) - Added
Pipeline::pipes()
method (#30346) - Added
TestResponse::assertCreated()
method (#30368)
- Added
connection is no longer usable
toDetectsLostConnections
(#30362) - Implemented parse ID on find method for many to many relation (#30359)
- Improvements on subqueries (#30307, 3f3b621)
- Pass mail data to theme css in
Markdown::render()
method (#30376) - Handle ajax requests in RequirePassword middleware (#30390, 331c354)
- Fixed
retry()
with$times
value less then 1 (#30356) - Fixed
last_modified
option inSetCacheHeader
(#30335) - Fixed the Filesystem manager's exception on unsupported driver (#30331, #30369)
- Fixed
shouldQueue()
check for bound event listeners (#30378) - Used exit code
1
when migration table not found (#30321) - Alleviate breaking change introduced by password confirm feature (#30389)
- Added ability to override
setUserPassword
on password reset (#30218) - Added firing
deleting
/deleted
events inMorphPivot
(#30229) - Added locking mechanism for the array cache driver (#30253)
- Added
dropAllViews
functionality to the SQL Server builder (#30222)
- Optimize eager loading memory handling (#30248)
- Fixed extra
?
for empty query string inRouteUrlGenerator::getRouteQueryString()
(#30280)
- Updated list of URI schemes for
Url
validator (#30220) - Added schema name when dropping all FKs in SQL Server (#30221)
- Used contracts in
RequirePassword
middleware (#30215) - Added ability to return array in
receivesBroadcastNotificationsOn
ifchannelName
is array (#30242, 2faadcd)
- Added support for callable objects in
Container::call()
(#30156) - Add multipolygonz type for postgreSQL (#30173)
- Add "unauthenticated" method in auth middleware (#30177)
- Add partialMock shorthand (#30202)
- Allow Storage::put to accept a Psr StreamInterface (#30179)
- Implement new password rule and password confirmation (#30214)
- Remove unnecessary param passed to updatePackageArray method (#30155)
- Add optional connection name to DatabaseUserProvider (#30154)
- Remove brackets arround URL php artisan serve (#30168)
- Apply limit to database rather than collection (#30148)
- Allow to use scoped macro in nested queries (#30127)
- Added array to json conversion for sqlite (#30133)
- Use the
policies()
method instead of the property policies (#30189) - Split hasValidSignature method (#30208)
validateDimensions()
handleimage/svg
MIME (#30204)
- Added
Illuminate\Support\LazyCollection::eager()
method (#29832) - Added
forgetChannel()
andgetChannels()
methods toIlluminate\Log\LogManager
(#30132, a52a0dd) - Added
Illuminate\Foundation\Testing\TestResponse::assertNoContent()
method (#30125) - Added
InteractsWithQueue
toSendQueueNotifications
(#30140) - Added
SendQueueNotifications::retryUntil()
method (#30141) - Added methods for sending cookies with test requests (#30101)
- Added support of job middleware for queued notifications (#30070)
- Fixed migration class duplicate check in
make:migration
command (#30095) - Fixed monolog v2 handler preparation (#30123)
- Fixed return of callback value for DurationLimiter (#30143)
- Added runtime information output for seeders (#30086)
- Added strict parameter to
Illuminate\Foundation\Testing\TestResponse::assertJsonPath()
(#30142) - Added
deletedAtColumn
optional parameter toFoundation\Testing\Concerns\InteractsWithDatabase::assertSoftDeleted()
(#30111)
- Improved
AuthServiceProvider::registerEventRebindHandler()
in case if guard is not initialized (#30105)
- Added
TestResponse::assertJsonPath()
method (#29957) - Added
hasMacro
/getGlobalMacro
/hasGlobalMacro
methods toEloquent Builder
(#30008) - Added
Illuminate\Database\Eloquent\Relations\BelongsToMany::getPivotColumns()
method (#30049) - Added
ScheduledTaskFinished
/ScheduledTaskStarting
events to signal when scheduled task runs (#29888) - Allowing adding command arguments and options with
InputArgument
/InputOption
objects (#29987)
- Fixed
__()
withnull
parameter (#29967) - Fixed modifying
updated_at
column on custom pivot model (#29970) - Fixed
Illuminate\Redis\Limiters\ConcurrencyLimiter
(#30005) - Fixed
VerifyCsrfToken
middleware when response object instance ofResponsable
interface (#29972) - Fixed Postgresql column creation without optional precision (#29873)
- Fixed migrations orders with multiple path with certain filenames (#29996)
- Fixed adding
NotFoundHttpException
to "allowed" exceptions in tests (#29975)
- Make it possible to disable encryption via
0
/false
(#29985) - Allowed a symfony file instance in validate dimensions (#30009)
- Create storage fakes with custom configuration (#29999)
- Set locale in
PendingMail
only if locale present conditionally (dd1e0a6) - Improved sorting of imports alphabetically on class generation from stub (#29951)
- Changed imports to Alpha ordering in stubs (#29954, #29958)
- Used value helper where possible (#29959)
- Improved readability in
auth.throttle
translation (#30011, #30017)
- Converted
call_user_func
where appropriate to native calls (#29932) - Changed imports to Alpha ordering (#29933)
- Used
Application::normalizeCachePath()
method to define cache path`s (#29890, ac9dbf6) - Wrapped
MySQL
default values in parentheses (#29878)
- Prevent
event auto discovery
from crashing when trying to instantiate files without php classes (#29895) - Fix resolving class command via container (#29869)
- Fixed
Schedule::runInBackground()
not fired on Windows (#29826)
- Throw
Symfony\Component\Routing\Exception\RouteNotFoundException
instead ofInvalidArgumentException
inUrlGenerator::route()
(#29861)
Check the upgrade guide in the Official Laravel Upgrade Documentation. Also you can see some release notes in the Official Laravel Release Documentation.