v9.3.1 - 2022-03-03
- Optionally cascade thrown Flysystem exceptions by @driesvints in laravel#41308
- Allow overriding transport type on Mailgun transporter by @jnoordsij in laravel#41309
- Change how Laravel handles strict morph map with pivot classes by @crynobone in laravel#41304
- $job can be an object in some methods by @villfa in laravel#41244
- Fix docblock on Batch class by @yoeriboven in laravel#41295
- Correct
giveConfig
param doc by @Neol3108 in laravel#41314 - Fix MySqlSchemaState does not add --ssl-ca to mysql cli by @DeepDiver1975 in laravel#41315
- Do not prepend baseUrl to absolute urls by @JaZo in laravel#41307
- Fixes getting the trusted proxies IPs from the configuration file by @nunomaduro in laravel#41322
- Add NotificationFake::assertNothingSentTo() by @axlon (#41232)
- Support --ssl-ca on schema load and dump by @DeepDiver1975 (#40931)
- Add whereNot() to Query Builder and Eloquent Builder by @marcovo (#41096)
- Added support for index and position placeholders in array validation messages by @Bird87ZA (#41123)
- Add resource binding by @aedart (#41233)
- Add ability to push additional pipes onto a pipeline via chain($pipes) by @stevebauman (#41256)
- Add option to filter out routes defined in vendor packages in route:list command by @amiranagram (#41254)
- Query PostgresBuilder fixes for renamed config 'search_path' by @derekmd (#41215)
- Improve doctypes for Eloquent Factory guessing methods by @bastien-phi (#41245)
- Fix Conditional::when and Conditional::unless when called with invokable by @bastien-phi (#41270)
- Improves Support\Collection reduce method type definition by @fdalcin (#41272)
- Fix inconsistent results of firstOrNew() when using withCasts() by @Attia-Ahmed (#41257)
- Fix implicitBinding and withTrashed route with child with no SoftDeletes trait by @stein-j (#41282)
- Unset Connection Resolver extended callback by @emrancu (#41216)
- Update Mailgun transport type by @driesvints (#41255)
- Added
Illuminate/Database/Eloquent/Casts/Attribute::make()
(#41014) - Added
Illuminate/Collections/Arr::keyBy()
(#41029) - Added expectsOutputToContain to the PendingCommand. (#40984)
- Added ability to supply HTTP client methods with JsonSerializable instances (#41055)
- Added
Illuminate/Filesystem/AwsS3V3Adapter::getClient()
(#41079) - Added Support for enum in Builder::whereRelation (#41091)
- Added X headers when using Mail::alwaysTo (#41101)
- Added of support Bitwise operators in query (#41112)
- Integrate Laravel CORS into framework (#41137)
- Added
Illuminate/Support/Str::betweenFirst()
(#41144) - Allow specifiying custom messages for Rule objects (#41145)
- Fixed Queue Failed_jobs insert issue with Exception contain UNICODE (#41020)
- Fixes attempt to log deprecations on mocks (#41057)
- Fixed loadAggregate not correctly applying casts (#41050)
- Do not transform JsonSerializable instances to array in HTTP client methods (#41077)
- Fix parsing config('database.connections.pgsql.search_path') (#41088)
- Eloquent: firstWhere returns Object instead of NULL (#41099)
- Fixed updated with provided qualified updated_at (#41133)
- Fix setPriority Call for MailChannel (#41120)
- Fixed route:list command output (#41177)
- Fix database migrations $connection property (#41161)
- Cursor pagination: convert original column to expression (#41003)
- Cast $perPage to integer on Paginator (#41073)
- Restore S3 client extra options (#41097)
- Use
latest()
withinnotifications()
inIlluminate/Notifications/HasDatabaseNotifications.php
(#41095) - Remove duplicate queries to find batch (#41121)
- Remove redundant check in FormRequest::validated() (#41115)
- Illuminate/Support/Facades/Storage::fake() changed (#41113)
- Use coalesce equal as provided by PHP >= 7.4 (#41174)
- Simplify some conditions with is_countable() (#41168)
- Pass AWS temporary URL options to createPresignedRequest method (#41156)
- Let Multiple* exceptions hold the number of records and items found (#41164)
- Added the ability to use the uniqueFor method for Jobs by @andrey-helldar in laravel#40974
- Add filtering of route:list by domain by @Synchro in laravel#40970
- Added dropForeignIdFor method to match foreignIdFor method by @bretto36 in laravel#40950
- Adds
Str::excerpt
by @nunomaduro in laravel#41000 - Make:model --morph flag to generate MorphPivot model by @michael-rubel in laravel#41011
- Add doesntContain to higher order proxies by @edemots in laravel#41034
- Improve types on model factory methods by @axlon in laravel#40902
- Add support for passing array as the second parameter for the group method. by @hossein-zare in laravel#40945
- Makes
ExceptionHandler::renderForConsole
internal on contract by @nunomaduro in laravel#40956 - Put the error message at the bottom of the exceptions by @nshiro in laravel#40886
- Expose next and previous cursor of cursor paginator by @gdebrauwer in laravel#41001
- Fix FTP root config by @driesvints in laravel#40939
- Allows tls encryption to be used with port different than 465 with starttls by @nicolalazzaro in laravel#40943
- Catch suppressed deprecation logs by @nunomaduro in laravel#40942
- Fix typo in method documentation by @shadman-ahmed in laravel#40951
- Patch regex rule parsing due to
Rule::forEach()
by @stevebauman in laravel#40941 - Fix replacing request options by @driesvints in laravel#40954
- Fix
MessageSent
event by @driesvints in laravel#40963 - Add firstOr() function to BelongsToMany relation by @r-kujawa in laravel#40828
- Fix
isRelation()
failing to check anAttribute
by @rodrigopedra in laravel#40967 - Fix default pivot attributes by @iamgergo in laravel#40947
- Fix enum casts arrayable behaviour by @diegotibi in laravel#40885
- Solve exception error: Undefined array key "", in artisan route:list command by @manuglopez in laravel#41031
- Fix Duplicate Route Namespace by @moisish in laravel#41021
- Fix the error message when no routes are detected by @LukeTowers in laravel#41017
- Fix mails with tags and metadata are not queuable by @joostdebruijn in laravel#41028
- Add disabled directive by @belzaaron in laravel#40900
- Widen the type of
Collection::unique
$key
parameter by @NiclasvanEyk in laravel#40903 - Makes
ExceptionHandler::renderForConsole
internal by @nunomaduro in laravel#40936 - Removal of Google Font integration from default exception templates by @bashgeek in laravel#40926
- Allow base JsonResource class to be collected by @jwohlfert23 in laravel#40896
- Fix Support\Collection reject method type definition by @joecampo in laravel#40899
- Fix SpoofCheckValidation namespace change by @eduardor2k in laravel#40923
- Fix notification email recipient by @driesvints in laravel#40921
- Fix publishing visibility by @driesvints in laravel#40918
- Fix Mailable->priority() by @giggsey in laravel#40917
- Improves
Support\Collection
each method type definition by @zingimmick in laravel#40879
- Update Mailable.php by @rentalhost in laravel#40868
- Switch to null coalescing operator in Conditionable by @inxilpro in laravel#40888
- Bring back old return behaviour by @ankurk91 in laravel#40880
Check the upgrade guide in the Official Laravel Upgrade Documentation. Also you can see some release notes in the Official Laravel Release Documentation.