v10.20.0 - 2023-08-22
- [10.x] Allow default values when merging values into a resource by @axlon in #48073
- [10.x] Adds a
createOrFirst
method to Eloquent by @tonysm in #47973 - [10.x] Allow utilising
withTrashed()
,withoutTrashed()
andonlyTrashed()
onMorphTo
relationship even withoutSoftDeletes
Model by @crynobone in #47880 - [10.x] Mark Request JSON data to be InputBag in docblocks by @jnoordsij in #48085
- [10.x] Markdown Mailables: Allow omitting Footer and Header when customising components by @jorisnoo in #48080
- [10.x] Update EmailVerificationRequest return docblock by @ahmedash95 in #48087
- [10.x] Add commonly reusable Composer related commands from 1st party packages by @crynobone in #48096
- [10.x] Add ability to measure a single callable and get result by @timacdonald in #48077
- [10.x] Fixes incorrect method visibility and add unit tests for
Illuminate\Support\Composer
by @crynobone in #48104 - [10.x] Skip convert empty string to null test by @hungthai1401 in #48105
- [10.x] Using complete insert for mysqldump when appending migration dump to schema file by @emulgeator in #48126
- [10.x] Add
hasPackage
method to Composer class by @emargareten in #48124 - [10.x] Add
assertJsonPathCanonicalizing
method by @gdebrauwer in #48117 - [10.x] Configurable storage path via environment variable by @sl0wik in #48115
- [10.x] Support providing subquery as value to
where
builder method by @gdebrauwer in #48116 - [10.x] Minor Tweaks by @utsavsomaiya in #48138
v10.19.0 - 2023-08-15
- [10.x] Fix typo in update
HasUniqueIds
by @iamcarlos94 in #47994 - [10.x] Gracefully handle scientific notation by @timacdonald in #48002
- [10.x] Fix docblocks for throw_if and throw_unless by @AbdelElrafa in #48003
- [10.x] Add
wordWrap
toStr
by @joshbonnick in #48012 - [10.x] Fix RetryBatchCommand overlapping of failed jobs when run concurrently with the same Batch ID using isolatableId by @rybakihor in #48000
- [10.x] Fix
assertRedirectToRoute
when route uri is empty by @khernik93 in #48023 - [10.x] Fix empty table displayed when using the --pending option but there are no pending migrations by @TheBlckbird in #48019
- [10.x] Fix forced use of write DB connection by @oleksiikhr in #48015
- [10.x] Use model cast when builder created updated at value by @timacdonald in #47942
- [10.x] Fix Collection::search and LazyCollection::search return type by @bastien-phi in #48030
- [10.x] Add ability to customize class resolution in event discovery by @bastien-phi in #48031
- [10.x] Add
percentage
method to Collections by @WendellAdriel in #48034 - [10.x] Fix parsing error in console when parameter description contains
--
by @rxrw in #48021 - [10.x] Allow Listeners to dynamically specify delay using
withDelay
by @CalebDW in #48026 - [10.x] Add dynamic return types to rescue helper by @axlon in #48062
- [10.x] createMany & createManyQuietly add count argument by @JHWelch in #48048
- [10.x] Attributes support on default component slot by @royduin in #48039
- [10.x] Add WithoutRelations attribute for model serialization by @Neol3108 in #47989
- [10.x] Can apply WithoutRelations to entire class by @cosmastech in #48068
- [10.x] createMany & createManyQuietly make argument optional by @JHWelch in #48070
v10.18.0 - 2023-08-08
- [10.x] Allow DatabaseRefreshed event to include given
database
andseed
options by @crynobone in #47923 - [10.x] Use generics in
throw_if
andthrow_unless
to indicate dynamic exception type by @osbre in #47938 - [10.x] Fixes artisan about --only should be case insensitive by @crynobone in #47955
- [10.x] Improve decimal shape validation by @timacdonald in #47954
- docs: update phpdoc in Str helper for remove function by @squiaios in #47967
- [10.x] Remove return on void callback by @gonzunigad in #47969
- [9.x] Improve decimal shape validation by @timacdonald in #47957
- [10.x] Add
content
method to Vite by @michael-rubel in #47968 - [10.x] Allow empty port in psql schema dump by @Arzaroth in #47988
- [10.x] Show config when the value is false or zero by @saeedhosseiinii in #47987
- [10.x] Add getter for components on IO interaction by @chris-ware in #47982
v10.17.1 - 2023-08-02
- [9.x] Back porting #47838 by @timacdonald in #47840
- [9.x] Normalise predis command argument where it maybe an object. by @crynobone in #47902
- [9.x] Migrate JSON data to shared InputBag by @ImJustToNy in #47919
- [10.x] Fix docblocks of the dispatchable trait by @imanghafoori1 in #47921
- [9.x] Circumvent PHP 8.2.9 date format bug that makes artisan serve crash by @levu42 in #47931
- [10.x] Fix prompt and console component spacing when calling another command by @jessarcher in #47928
- [10.x] Fix prompt rendering after
callSilent
by @jessarcher in #47929 - [10.x] Update ensure() collection method to correctly work with Interfaces and object inheritance by @karpilin in #47934
v10.17.0 - 2023-08-01
- [10.x] Update
TrustProxies
to rely on$headers
if properly set by @inxilpro in #47844 - [10.x] Accept protocols as argument for URL validation by @MrMicky-FR in #47843
- [10.x] Support human-friendly text for file size by @jxxe in #47846
- [10.x] Added UploadedFile as return type by @khrigo in #47847
- [10.x] Add option to adjust database default lock timeout by @joelharkes in #47854
- [10.x] PHP 8.3 builds by @driesvints in #47788
- [10.x] Add Collection::enforce() method by @inxilpro in #47785
- [10.x] Allow custom mutex names for isolated commands by @rybakihor in #47814
- Fix for issues with closure-based scheduled commands in schedule:test by @mobidev86 in #47862
- [10.x] Extract customised deleted_at column name from Model FQN by @edvordo in #47873
- [10.x] Adding Minutes Option in Some Frequencies by @joaopalopes24 in #47789
- [10.x] Add
config:show
command by @xiCO2k in #47858 - [10.x] Test Improvements for
hashed
password by @crynobone in #47904 - [10.x] Use shared facade script by @timacdonald in #47901
- [10.x] Add --test and --pest options to make:component by @nshiro in #47894
- [10.x] Prompts by @jessarcher in #46772
- [10.x] Migrate JSON data to shared InputBag by @timacdonald in #47914
- [10.x] Fix
Factory::configure()
return type by @axlon in #47920 - [10.x] Fix Http global middleware for queue, octane, and dependecy injection by @timacdonald in #47915
v10.16.1 - 2023-07-26
- [10.x] Fix BusFake::assertChained() for a single job by @gehrisandro in #47832
- [10.x] Retain
$request->request
InputBag
type by @timacdonald in #47838
v10.16.0 - 2023-07-25
- [10.x] Improve display of sub-minute tasks in
schedule:list
command. by @jessarcher in #47720 - [10.x] Add new SQL error message "No connection could be made because the target machine actively refused it" by @magnusvin in #47718
- [10.x] Ignore second in HttpRequestTest date comparison by @kylekatarnls in #47719
- [10.x] Call
renderForAssertions
inassertHasSubject
by @ttrig in #47728 - [10.x] We dont want Symfony to catch pcntl signal by @ChristopheBorcard in #47725
- [10.x] Use atomic locks for command mutex by @Gaitholabi in #47624
- [10.x] Improve typehint for Model::getConnectionResolver() by @LukeTowers in #47749
- [10.x] add getRedisConnection to ThrottleRequestsWithRedis by @snmatsui in #47742
- [10.x] Adjusts for Volt by @nunomaduro in #47757
- [10.x] Fix sql server paging problems by @joelharkes in #47763
- [10.x] Typo type of data by @hungthai1401 in #47775
- [10.x] Add missing tests for the
schedule:list
command. by @xiCO2k in #47787 - [10.x] Fix
Str::replace
return type by @datlechin in #47779 - [10.x] Collection::except() with null returns all by @pniaps in #47821
- [10.x] fix issue #47727 with wrong return type by @renky in #47820
- [10.x] Remove unused variable in
VendorPublishCommand
by @hungthai1401 in #47817 - [10.x] Remove unused variable in
MigrateCommand
by @sangnguyenplus in #47816 - [10.x] Revert 47763 fix sql server by @dunhamjared in #47792
- [10.x] Add test for Message ID, References and Custom Headers for Mailables by @alexbowers in #47791
- [10.x] Add support for
BackedEnum
in CollectiongroupBy
method by @osbre in #47823 - [10.x] Support inline disk for scoped driver by @alexbowers in #47776
- [10.x] Allowing bind of IPv6 addresses in development server by @MuriloChianfa in #47804
- [10.x] Add more info to issue template by @driesvints in #47828
v10.15.0 - 2023-07-11
- [10.x] Change return type of
getPrivateToken
in AblyBroadcaster by @milwad-dev in #47602 - [10.x] Add toRawSql, dumpRawSql() and ddRawSql() to Query Builders by @tpetry in #47507
- [10.x] Fix recorderHandler not recording changes made by middleware by @j3j5 in #47614
- Pass queue from Mailable to SendQueuedMailable job by @Tarpsvo in #47612
- [10.x] Sub-minute Scheduling by @jessarcher in #47279
- [10.x] Fixes failing tests running on DynamoDB Local 2.0.0 by @crynobone in #47653
- [10.x] Allow password reset callback to modify the result by @GrahamCampbell in #47641
- Forget with collections by @joelbutcher in #47637
- [10.x] Do not apply global scopes when incrementing/decrementing an existing model by @cosmastech in #47629
- [10.x] Adds inline attachments support for "notifications" markdown mailables by @nunomaduro in #47643
- Assertions for counting outgoing mailables by @jasonmccreary in #47655
- [10.x] Add getRawQueryLog() method by @fuwasegu in #47623
- [10.x] Fix Storage::cloud() return type by @tattali in #47664
- [10.x] Add
isUrl
to theStr
class and use it from the validator by @GrahamCampbell in #47688 - [10.x] Remove unwanted call to include stack traces by @HazzazBinFaiz in #47687
- [10.x] Make Vite throw a new
ManifestNotFoundException
by @innocenzi in #47681 - [10.x] Move class from file logic in Console Kernel to dedicated method by @CalebDW in #47665
- [10.x] Dispatch model pruning started and ended events by @ziadoz in #47669
- [10.x] Update DatabaseRule to handle Enums for simple where clause by @CalebDW in #47679
- [10.x] Add data_remove helper by @PhiloNL in #47618
- [10.x] Added tests for
isUrl
to Str. by @michaelnabil230 in #47690 - [10.x] Added
isUrl
to Stringable. by @michaelnabil230 in #47689 - [10.x] Tweak return type for missing config by @sfreytag in #47702
- [10.x] Fix parallel testing without any database connection by @deleugpn in #47705
- [10.x] Test Improvements by @crynobone in #47709
- [10.x] Allows HTTP exceptions to be thrown for views by @nunomaduro in #47714
v10.14.1 - 2023-06-28
- [10.x] Fix
Dispatcher::until
return type by @Neol3108 in #47585 - [10.x] Add Collection::wrap to add method on BatchFake by @schonhoff in #47589
- [10.x] Fixes grammar in FoundationServiceProvider by @adampatterson in #47593
- [10.x] Ensure duration is present by @timacdonald in #47596
v10.14.0 - 2023-06-27
- [10.x] Add test for
withCookies
method in RedirectResponse by @milwad-dev in #47383 - [10.x] Add new error message "SSL: Handshake timed out" handling to PDO Dete… by @yehorherasymchuk in #47392
- [10.x] Add new error messages for detecting lost connections by @mfn in #47398
- [10.x] Update phpdoc
except
method in Middleware by @milwad-dev in #47408 - [10.x] Fix inconsistent type hint for
$passwordTimeoutSeconds
by @devfrey in #47414 - Change visibility of
path
method in FileStore.php by @foremtehan in #47413 - [10.x] Fix return type of
buildException
method by @milwad-dev in #47422 - [10.x] Allow serialization of NotificationSent by @cosmastech in #47375
- [10.x] Incorrect comment in
PredisConnector
andPhpRedisConnector
by @hungthai1401 in #47438 - [10.x] Can set custom Response for denial within
Gate@inspect()
by @cosmastech in #47436 - [10.x] Remove unnecessary param in
addSingletonUpdate
by @milwad-dev in #47446 - [10.x] Fix return type of
prefixedResource
&prefixedResource
by @milwad-dev in #47445 - [10.x] Add Factory::getNamespace() by @tylernathanreed in #47463
- [10.x] Add
whenAggregated
method toConditionallyLoadsAttributes
trait by @akr4m in #47417 - [10.x] Add PendingRequest
withHeader()
method by @ralphjsmit in #47474 - [10.x] Fix $exceptTables to allow an array of table names by @cwilby in #47477
- [10.x] Fix
eachById
onHasManyThrough
relation by @cristiancalara in #47479 - [10.x] Allow object caching to be disabled for custom class casters by @CalebDW in #47423
- [10.x] "Can" validation rule by @stevebauman in #47371
- [10.x] refactor(Parser.php): Removing the extra "else" statement by @saMahmoudzadeh in #47483
- [10.x] Add
UncompromisedVerifier::class
toprovides()
inValidationServiceProvider
by @xurshudyan in #47500 - [9.x] Fix SES V2 Transport "reply to" addresses by @jacobmllr95 in #47522
- [10.x] Reindex appends attributes by @hungthai1401 in #47519
- [10.x] Fix
ListenerMakeCommand
deprecations by @dammy001 in #47517 - [10.x] Add
HandlesPotentiallyTranslatedString
trait by @xurshudyan in #47488 - [10.x] update [JsonResponse]: using match expression instead of if-elseif-else by @saMahmoudzadeh in #47524
- [10.x] Add
withQueryParameters
to the HTTP client by @mnapoli in #47297 - [10.x] Allow
%
symbol in component attribute names by @JayBizzle in #47533 - [10.x] Fix Http client pool return type by @srdante in #47530
- [10.x] Use
match
expression inresolveSynchronousFake
by @osbre in #47540 - [10.x] Use
match
expression incompileHaving
by @osbre in #47548 - [10.x] Use
match
expression ingetArrayableItems
by @osbre in #47549 - [10.x] Fix return type in
SessionGuard
by @PerryvanderMeer in #47553 - [10.x] Fix return type in
DatabaseQueue
by @PerryvanderMeer in #47552 - [10.x] Fix return type in
DumpCommand
by @PerryvanderMeer in #47556 - [10.x] Fix return type in
MigrateMakeCommand
by @PerryvanderMeer in #47557 - [10.x] Add missing return to
Factory
by @PerryvanderMeer in #47559 - [10.x] Update doc in Eloquent model by @alirezasalehizadeh in #47562
- [10.x] Fix return types by @PerryvanderMeer in #47561
- [10.x] Fix PHPDoc throw type by @fernandokbs in #47566
- [10.x] Add hasAny function to ComponentAttributeBag, Allow multiple keys in has function by @indykoning in #47569
- [10.x] Ensure captured time is in configured timezone by @timacdonald in #47567
- [10.x] Add Method to Report only logged exceptions by @joelharkes in #47554
- [10.x] Add global middleware to
Http
client by @timacdonald in #47525 - [9.x] Fixes unable to use
trans()->has()
on JSON language files. by @crynobone in #47582
v10.13.5 - 2023-06-08
- Revert "[10.x] Update Kernel::load() to use same
classFromFile
logic as events" by @taylorotwell in #47382
v10.13.3 - 2023-06-08
- Narrow down array type for
$attributes
inCastsAttributes
by @devfrey in #47365 - Add test for
assertViewHasAll
method by @milwad-dev in #47366 - Fix
schedule:list
to display named Jobs by @liamkeily in #47367 - Support
ConditionalRules
withinNestedRules
by @cosmastech in #47344 - Small test fixes by @stevebauman in #47369
- Pluralisation typo in queue:clear command output by @sebsobseb in #47376
- Add getForeignKeyFrom method by @iamgergo in #47378
- Add shouldHashKeys to ThrottleRequests middleware by @fosron in #47368
- Added
Illuminate/Http/Client/PendingRequest::replaceHeaders()
(#47335) - Added
Illuminate/Notifications/Messages/MailMessage::attachMany()
(#47345)
- Revert "[10.x] Remove session on authenticatable deletion v2" (#47354)
- 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)
- Update Kernel::load() to use same classFromFile logic as events (#47327)
- Remove redundant 'setAccessible' methods (#47348)
- Added
Illuminate\Contracts\Database\Query\ConditionExpression
interface and functional for this (#47210) - Added return type for
Illuminate/Notifications/Channels/MailChannel::send()
(#47310)
- Revert "[10.x] Fix inconsistentcy between report and render methods" (#47326)
- Display queue runtime in human readable format (#47227)
- 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 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)
- 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
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)
- Fixes singleton and api singletons creatable|destryoable|only|except combinations (#47098)
- Don't use empty key or secret for DynamoDBClient (#47144)
- Remove session on authenticatable deletion (#47141)
- Added error handling and ensure re-enabling of foreign key constraints in
Illuminate/Database/Schema/Builder::withoutForeignKeyConstraints()
(#47182)
- Remove useless else statements (#47161)
- 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
Illuminate/Database/Console/ShowModelCommand::getPolicy()
(#47043)
- Remove return from channelRoutes method (#47059)
- Bug in
Illuminate/Database/Migrations/Migrator::reset()
with string path (#47047) - Unify logic around cursor paginate (#47094)
- Clears resolved instance of Vite when using withoutVite (#47091)
- Remove workarounds for old Guzzle versions (#47084)
- 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)
- Added keys length check to prevent mget error in
Illuminate/Cache/RedisStore::many()
(#46998) - 'hashed' cast - do not rehash already hashed value (#47029)
- Used
Carbon::now()
instead ofnow()
(#47017) - Use file locks when writing failed jobs to disk (b822d28)
- Raise visibility of Mailable prepareMailableForDelivery() (#47031)
- 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]#46947) - Added url support for mail config (#46964)
- Fixed replace missing_unless (89ac58a)
- Gracefully handle invalid code points in e() (#46914)
- HasCasts returning false instead of true (#46992)
- 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)
- 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)
- Fix date_format rule throw ValueError (#46824)
- 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 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 compiled view file ends with .php (#46755)
- Fix validation rule names (#46768)
- Fixed validateDecimal() (#46809)
- Add headers to exception in
Illuminate/Foundation/Application::abourd()
(#46780) - Minor skeleton slimming (framework edition) (#46786)
- Release lock for job implementing ShouldBeUnique that is dispatched afterResponse() (#46806)
- Changed
Illuminate/Process/Factory::pipe()
method. It will be run pipes immediately (e34ab39)
- 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)
- 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)
- Removes unnecessary parameters in
creatable()
/destroyable()
methods inIlluminate/Routing/PendingSingletonResourceRegistration
(#46677) - Return non-zero exit code for uncaught exceptions (#46541)
- Added trait
Illuminate/Foundation/Testing/WithConsoleEvents
(#46694)
- Added missing ignored methods to
Illuminate/View/Component
(#46692) - console.stub: remove void return type from handle (#46697)
- Reverted "Set container instance on session manager"Set container instance on session manager (#46691)
- Added ability to set a custom class for the AsCollection and AsEncryptedCollection casts (#46619)
- Set container instance on session manager (#46621)
- Added empty string definition to Str::squish function (#46660)
- Allow $sleepMilliseconds parameter receive a Closure in retry method from PendingRequest (#46653)
- Support contextual binding on first class callables (de8d515, e511a3b)
- Added methods to determine if API resource has pivot loaded (#46555)
- Added caseSensitive flag to Stringable replace function (#46578)
- Allow insert..select (insertUsing()) to have empty $columns (#46605, 399bff9)
- Added
Illuminate/Database/Connection::selectResultSets()
(#46592)
- Make sure pivot model has previously defined values (#46559)
- Move SetUniqueIds to run before the creating event (#46622)
- Added
Illuminate/Cache/CacheManager::setApplication()
(#46594)
- 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)
- 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)
- Move Symfony events dispatcher registration to Console\Kernel (#46508)
- 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)
- 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)
- 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)
- Fixes Expression no longer implements Stringable (#46395)
- Reverted "Use fallback when previous URL is the same as the current in
Illuminate/Routing/UrlGenerator::previous()
" (#46392)
- 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
Illuminate/Mail/Mailable::buildMarkdownView()
(791f8ea7) - FIX on CanBeOneOfMany trait giving erroneous results (#46309)
- Use fallback when previous URL is the same as the current in
Illuminate/Routing/UrlGenerator::previous()
(#46234) - Allow override of the Builder paginate() total (#46336)
- 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)
- Revert "[10.x] Fix custom themes not reseting on Markdown renderer" (#46328)
- Fix typo in function
createMissingSqliteDatbase
name insrc/Illuminate/Database/Console/Migrations/MigrateCommand.php
(#46326)
- 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)
- Fixed
Illuminate/Foundation/Testing/Concerns/InteractsWithDatabase::expectsDatabaseQueryCount()
$connection parameter (#46228) - Fixed Facade Fake (#46257)
- Remove autoload dumping from make:migration (#46215)
- Added protected method
Illuminate/Http/Resources/Json/JsonResource::newCollection()
for simplifies collection customisation (#46217)
- Fixes constructable migrations (#46223)
- Accept time when generating ULID in
Str::ulid()
(#46201)
- Revert changes from
Arr::random()
(cf3eb90)
- Add the ability to re-resolve cache drivers (#46203)
- Fixed
Illuminate/Collections/Arr::shuffle()
for empty array (0c6cae0)
- Fixing issue where 0 is discarded as a valid timestamp (#46158)
- Fix custom themes not reseting on Markdown renderer (#46200)
- Use secure randomness in Arr:random and Arr:shuffle (#46105)
- Use mixed return type on controller stubs (#46166)
- Use InteractsWithDictionary in Eloquent collection (#46196)
- Added missing expression support for pluck in Builder (#46146)
- Register policies automatically to the gate (#46132)
- Standard Input can be applied to PendingProcess (#46119)
- Fix Expression string casting (#46137)
- Add AddQueuedCookiesToResponse to middlewarePriority so it is handled in the right place (#46130)
- Show queue connection in MonitorCommand (#46122)
Please consult the upgrade guide and release notes in the official Laravel documentation.