Releases: laravel/framework
Releases · laravel/framework
Release list
v13.26.1
Immutable
release. Only release title and notes can be modified.
- Revert "[13.x] feat: add orWhereKey and orWhereKeyNot to Eloquent Builder" by @taylorotwell in #61236
v13.26.0
Immutable
release. Only release title and notes can be modified.
- [13.x] Add JobReleased event to Worker by @jackbayliss in #61108
- [13.x] Fix QueueWorkerTest by @jackbayliss in #61134
- [13.x] Avoid cross-slot reads when checking paused queues by @lazerg in #61139
- [13.x] Add managedQueues() to the Cloud queue by @jackbayliss in #61149
- [13.x] Accept enums in
inOrderOf()by @ziadoz in #61147 - [13.x] Surface paused queues in the queue worker output by @jackbayliss in #61142
- [13.x] Respect readonly=false in Microsoft SQL Server configuration by @HenkPoley in #61141
- [12.x] Stricten
uploadto be fetch only from request's query string for temporary upload urls by @crynobone in #61145 - Read-through filesystem by @taylorotwell in #61140
- [13.x] Pass a connector to PhpRedisClusterConnection so it can rebuild its client by @tgivslife in #61161
- [13.x] Only register pail dev command when installed by @jackbayliss in #61157
- [13.x] feat: add closure support to wherePivot and orWherePivot by @calebdw in #61150
- [13.x] feat: add orWhereKey and orWhereKeyNot to Eloquent Builder by @calebdw in #61154
- [13.x] allow read through filesystems to optionally not copy by @jimbojsb in #61155
- [13.x] Fix constantly asking to install
multiplex& startingviteon project without vite by @nunomaduro in #61167 - [13.x] Add debounceable queued listeners by @stevebauman in #61169
- [13.x] Add test to ensure pail is ignored if not installed by @jackbayliss in #61168
- Allow some Redis commands to retry on transient failures by @taylorotwell in #61175
- Fix Redis pipeline facade annotation by @MNazikk in #61173
- [13.x] Remove the pinned
@laravel/multiplexversion by @joetannenbaum in #61171 - [13.x] Fix FoundationDevCommandsTest by @jackbayliss in #61170
- [12.x] Improves
invalidation rule from getting bypass via loose comparison by @crynobone in #61146 - [13.x] Retry timed-out cloud agent long-polls by @kieranbrown in #61177
- [12.x] Retry timed-out cloud agent long-polls by @kieranbrown in #61178
- [13.x] Scan every master node in phpredis cluster connections by @tgivslife in #61174
- [13.x] Fix uncaptured setTestNow now() reuse in tests by @lucasmichot in #61190
- [13.x] Make process pools iterable by @xurshudyan in #61184
- [13.x] Report seeder progress in db:seed command - when a specific class is specified by @iz-ahmad in #61186
- [13.x] Fix infinite scan loop when pruning stale cache tags on a Redis cluster by @tgivslife in #61181
- [13.x] Add a dedicated exception for idle process timeouts by @xurshudyan in #61182
- [13.x] Keep the Redis connection usable when a pipeline or transaction fails by @tgivslife in #61183
- [12.x] Escape single quotes in Postgres JSON path attributes by @crynobone in #61192
- [13.x] Support Guzzle 8 by @GrahamCampbell in #60321
- [13.x] Add process fake assertion helpers by @xurshudyan in #61193
- [13.x] Introduce
Queue::forward()by @jackbayliss in #61188 - [13.x] Support array commands in process fake assertions by @xurshudyan in #61197
- [13.x] Prevent TypeError when JSON:API query parameters are arrays by @s-shiryaev in #61206
- More Mockery cleanup by @jasonmccreary in #61199
- [13.x] fix:
expectsQuestion()docblock to allow array answers by @joostdebruijn in #61223 - [13.x] Test on MySQL 9.7 (lts) by @jnoordsij in #61218
- [13.x] Promote nested data to top-level managed queue event by @timacdonald in #61209
- [13.x] Rebuild the phpredis client after a cluster response error by @tgivslife in #61214
- [13.x] Fix
throwUnless()silently doing nothing when given a closure by @xurshudyan in #61217 - [13.x] Keep the assertion failure message when session errors are JSON serialized by @lazerg in #61201
- [13.x] Add getRelatedClass to Relation by @jackbayliss in #61222
- [12.x] Promote nested data to top-level managed queue event by @timacdonald in #61225
- Merge branch '12.x' into 13.x by @crynobone in #61228
- [13.x] Preserve input key order when merging files in Request::all() by @roger-hermasch in #61221
- Wait for Redis cluster nodes before creating the test cluster by @crynobone with @Copilot in #61229
v12.67.0
Immutable
release. Only release title and notes can be modified.
- [12.x] Stricten
uploadto be fetch only from request's query string for temporary upload urls by @crynobone in #61145 - [12.x] Improves
invalidation rule from getting bypass via loose comparison by @crynobone in #61146 - [12.x] Retry timed-out cloud agent long-polls by @kieranbrown in #61178
- [12.x] Escape single quotes in Postgres JSON path attributes by @crynobone in #61192
- [12.x] Promote nested data to top-level managed queue event by @timacdonald in #61225
- [12.x] Backport #60908: Avoid quadratic wildcard rule expansion by @OutlawPlz in #61232
v13.25.0
Immutable
release. Only release title and notes can be modified.
- [12.x] Prevent fatal errors when logging deprecations fails by @GrahamCampbell in #60907
- [12.x] Fix Factory::insert() with a count of zero by @alies-dev in #60911
- [12.x] Fix schedule:list timezone conversion for range, step, and wildcard cron expressions by @xiCO2k in #60913
- [12.x] Fix getMigrationBatches return type annotation by @wouterj in #60973
- [13.x] Add foreignUlidFor schema helper by @talaridisTh in #61036
- [13.x] Improve return type for
Arr::prependKeysWith()by @axlon in #61034 - [13.x] Add uuid to queue fake for inspection methods by @jackbayliss in #60966
- [13.x] Respect after-commit dispatch when bulk pushing to DatabaseQueue by @Faiyajz in #60996
- [13.x] Add a UniqueJobSkipped event by @jackbayliss in #61039
- [13.x] Ensure Container::call cleans up build stack after exceptions by @Faiyajz in #61041
- [13.x] Reject non-stream resources in HTTP fake response bodies by @GrahamCampbell in #61047
- [13.x] Fix incorrect image dimensions for HEIC by @zachiler in #61010
- [13.x] Simplify most of the exceptions expectations by @lucasmichot in #61049
- [13.x] Fix Str::numbers() type annotation by @lucasmichot in #61053
- [13.x] Fix flaky Str::random distribution test by @lucasmichot in #61052
- [13.x] Normalize enum keys in typed cache getters by @Amirhf1 in #61056
- Simplify remaining exception expectations by @lucasmichot in #61058
- Apply fixes from StyleCI by @taylorotwell in #61059
- [13.x] Isolate cloud agent requests from global HTTP client configuration by @kieranbrown in #61064
- [13.x] Fix flaky circuit breaker release delay assertions by @GrahamCampbell in #61062
- [13.x] Bump minimum versions by @lucasmichot in #61033
- [13.x] Configure a socket timeout for the Cloud log driver by @jessarcher in #61065
- [13.x] Fix: add missing check for
#[WithoutTimestamps]on model ignore touch by @bram-pkg in #61073 - [12.x] Isolate cloud agent requests from global HTTP client configuration by @kieranbrown in #61068
- [13.x] Fix getRememberToken return type documentation by @keibass in #61067
- [13.x] Respect backed enum queue names when queueing mailables by @Faiyajz in #61066
- [13.x] Restore missing model deletion for broadcast events by @Faiyajz in #61074
- [13.x] Use new Collection instead of Collection::make in tests by @lucasmichot in #61079
- [13.x] Add the timeout in JobTimedOut by @jackbayliss in #61060
- [12.x] Configure a socket timeout for the Cloud log driver by @jessarcher in #61082
- [13.x] Move Testbench-based tests to tests/Integration by @lucasmichot in #61080
- Use serve defaults for dev command by @n3crosis in #61090
- [13.x] Skip unsupported values in LazyCollection::flip() by @Amirhf1 in #61081
- [13.x] Preserve default denial response for Gate::forUser by @Faiyajz in #61087
- [13.x] Support fail on timeout for notifications by @jackbayliss in #61072
- [13.x] Fix QueueFakeTest by @jackbayliss in #61091
- [13.x] Prefer consitent assertions by @lucasmichot in #61093
- [13.x] Clean up test teardown by @lucasmichot in #61078
- Prefer text input on dynamic access by @taylorotwell in #61099
- [13.x] feat: make Image::toFormat() public by @calebdw in #61110
- [13.x] Pass the HTTP method to retry callbacks for asynchronous HTTP requests by @Button99 in #61106
- [13.x] Add
withoutCookiesmethod by @xurshudyan in #61115 - [13.x] feat: implement Responsable on Image class by @calebdw in #61111
- [13.x] feat: add Image::fromStream method by @calebdw in #61109
- [13.x] Run
artisan devthrough@laravel/multiplexby @joetannenbaum in #61100 - [13.x] Restore array support in Str::substrReplace by @Faiyajz in #61105
- Revert "[13.x] Bump minimum versions" by @GrahamCampbell in #61118
- [12.x] ColumnDefinition::unsigned takes a parameter, which should be documented by @afk11 in #61123
- [13.x] Ensure Queue drivers work for enums matching the Fake by @jackbayliss in #61116
- [13.x] Preserve queue resolution on queued mailables in MailFake by @hamdyelbatal122 in #61114
- [13.x] Handle cache maintenance mode deactivation races by @Faiyajz in #61121
- [13.x] Fix nullable return types on the route binding registrar by @dfinchenko in #61124
- [13.x] Mockery cleanup by @jasonmccreary in #61117
- Merge branch '12.x' by @crynobone in #61130
- [13.x] Support brick math ^0.19 by @jackbayliss in #61133
- Improve signed URL support for Vapor by @timacdonald in #61129
- [13.x] Add a global pause switch for queues by @jackbayliss in #61126
v12.66.0
Immutable
release. Only release title and notes can be modified.
- [12.x] Isolate cloud agent requests from global HTTP client configuration by @kieranbrown in #61068
- [12.x] Configure a socket timeout for the Cloud log driver by @jessarcher in #61082
- [12.x] ColumnDefinition::unsigned takes a parameter, which should be documented by @afk11 in #61123
v12.65.0
Immutable
release. Only release title and notes can be modified.
- [12.x] Prevent fatal errors when logging deprecations fails by @GrahamCampbell in #60907
- [12.x] Fix Factory::insert() with a count of zero by @alies-dev in #60911
- [12.x] Fix schedule:list timezone conversion for range, step, and wildcard cron expressions by @xiCO2k in #60913
- [12.x] Fix getMigrationBatches return type annotation by @wouterj in #60973
v13.24.0
Immutable
release. Only release title and notes can be modified.
- [13.x] Add
modelKeys()to Eloquent query builder by @ziadoz in #60924 - [13.x] Add an array_keys validation rule by @nebarg in #60918
- [13.x] Respect job delays when bulk pushing to QueueFake by @Faiyajz in #60916
- [13.x] Use immutable timestamps in batch testing fakes by @alies-dev in #60912
- [13.x] Avoid rebuilding every cached Route on CompiledRouteCollection lookups by @lucasmichot in #60909
- [13.x] Fix
DumpCommandreturn type. by @KentarouTakeda in #60934 - [13.x] Re-evaluate unmatched BindWhen attributes by @Faiyajz in #60933
- [13.x] Add if-related rector rules by @lucasmichot in #60930
- [13.x] Use self::SUCCESS/self::FAILURE in console commands by @lucasmichot in #60928
- [13.x] Fake the pwnedpasswords API in ValidationPasswordRuleTest by @lucasmichot in #60927
- fix typo by @theHocineSaad in #60942
- [13.x] Memoize TestResponse::decodeResponseJson() by @lucasmichot in #60929
- [13.x] Consolidate Artisan command $name/getArguments()/getOptions() into $signature by @lucasmichot in #60926
- [13.x] Escape single quotes in Postgres JSON path attributes by @kpanuragh in #60923
- [13.x] Preserve relation constraints when resolving attributes during noConstraints by @hamdyelbatal122 in #60931
- [13.x] Replace throw_if/throw_unless with explicit if/throw in src/ by @lucasmichot in #60944
- [13.x] Adds dominant color detection to image driver by @dr-codswallop in #60932
- Fix PendingProcess losing falsy command strings on run()/start() by @lucasmichot in #60947
- [13.x] Use Collection only()/diff() instead of filter()/reject() with in_array() by @lucasmichot in #60945
- [13.x] Use enum_value() helper in a few more places by @lucasmichot in #60983
- [13.x] Remove redundant m::close() by @lucasmichot in #60981
- [13.x] Add missing conditionable, reflection, macroable requires by @lucasmichot in #60980
- [13.x] Use Stringable::explode() instead of new Collection(explode()) by @lucasmichot in #60979
- [13.x] Prefer isEmpty()/isNotEmpty()/contains() over count() checks by @lucasmichot in #60978
- [13.x] Avoid redundant Collection passes in map/filter/reject chains by @lucasmichot in #60977
- [13.x] Detect circular alias references in Container by @lucasmichot in #60974
- [13.x] Fix pagination edge cases by @lucasmichot in #60968
- [13.x] Solve another PHP 8.5 null index deprecation by @tontonsb in #60964
- [13.x] Prevent TypeError in Validator::validateDistinct() by @theHocineSaad in #60961
- [13.x] Fix Actions remove
imagedestroyfrom tests by @jackbayliss in #60957 - [13.x] Add NumberPrompt fallback by @romain-mezghenna in #60959
- [13.x] Fix PHP 8.5 null array offset deprecation in
Relation::getMorphedModel()by @mertasan in #60954 - [13.x] Respect job delays when bulk pushing to FailoverQueue by @Faiyajz in #60950
- bugfix: inconsistent Guarded attribute behaviour on Pivot by @Carnicero90 in #60952
- [13.x] Fix the ModelMakeCommand handle return type by @dfinchenko in #60989
- [13.x] Sort null-key deprecation in
LazyCollection::keyByby @jackbayliss in #60987 - [13.x] Fix validation stalling for minutes on large arrays by @mariomka in #60908
- [13.x] Adjust ImagickDriverTest by @jackbayliss in #60990
- [13.x] Add HEIC and additional AVIF support by @riasvdv in #60922
- [13.x] Fix multibyte case-insensitive matching in Str::replace and Str::remove by @marekmiklusek in #60882
- [13.x] Fix appended accessors receiving null in toArray() by @lazerg in #60921
- Attempt at lock fix by @taylorotwell in #60906
- [13.x] Sync property docblocks with their parent declarations by @dfinchenko in #60991
- [13.x] Add tests for the whereUuid and whereUlid route constraints by @dfinchenko in #61013
- [13.x] Use strict comparisons for int-to-int checks by @lucasmichot in #61005
- [13.x] Add test for the Request matchesType method by @dfinchenko in #61012
- Adjust URL validation logic by @taylorotwell in #61009
- [13.x] Sync FilesystemAdapter return types with the filesystem contract by @dfinchenko in #61011
- [13.x] Use static instead of self in
LoadConfigurationby @cosmastech in #61006 - [13.x] Remove unregistered skipped rector rule by @lucasmichot in #60999
- [13.x] FIX flaky dominantColor() test by @lucasmichot in #60997
- [13.x] Use PHPUnit requirement attributes instead of markTestSkipped() by @lucasmichot in #60998
- [13.x] Use reduce() instead of foreach accumulator loops by @lucasmichot in #61004
- [13.x] Remove dead parent::setUp()/tearDown() calls in tests by @lucasmichot in #60994
- [13.x] Use Str::uuid()->toString() by @lucasmichot in #60995
- [13.x] Check the class before calling relationLoaded in loadMissingRelationshipChain by @dxiiren in #60993
- [13.x] Fix ReflectsClosures::firstClosureParameterTypes() returning wrong parameter's type by @lucasmichot in #60976
- [13.x] Avoid repeated Redis prefix/connection lookups in tag-set loops by @lucasmichot in #61002
- [13.x] early return by @lucasmichot in #61014
- Revert "[13.x] Add if-related rector rules" by @taylorotwell in #61027
- Revert "[13.x] Use Str::uuid()->toString()" by @taylorotwell in #61028
- [13.x] Fix
Arr::forget()removing the wrong element by @AlessioGiacobbe in #61023
v13.23.0
Immutable
release. Only release title and notes can be modified.
- Bump postcss from 8.5.15 to 8.5.23 in /src/Illuminate/Foundation/resources/exceptions/renderer by @dependabot[bot] in #60884
- [13.x] Add a monthly log driver by @SjorsO in #60892
- [13.x] Improve types in
Imageclass by @shaedrich in #60890 - Fix null handling in Arr::last() method by @AmadulHaque in #60887
- [13.x] Allow ImageManager fromStorage disk to accept enums by @riesjart in #60889
- [13.x] Add SES tenant support to the SES v2 transport by @atymic in #60886
- Bump actions/checkout from 7.0.0 to 7.0.1 in the github-actions group by @dependabot[bot] in #60900
- [13.x] Prevent fatal errors when logging deprecations fails by @GrahamCampbell in #60893
- [13.x] Bump
monolog/monologconstraint by @jackbayliss in #60894 - [13.x] Add monthly channel to logging config by @yazansalhi in #60895
- [13.x] Use a timing-safe comparison for the maintenance mode bypass secret by @yazansalhi in #60896
- [13.x] Improve
Collection::selectgeneric types by @timacdonald in #60898 - [13.x] Allow ->using(...) in ->change() migrations for PostgreSQL compatibility by @shemgp in #60901
- Revert "[13.x] Fix that retries of
ShouldBeUniqueUntilProcessingjobs are force-releasing locks they don't own" by @taylorotwell in #60905 - [13.x] Fix default handling in
CookieJar::queued()by @alies-dev in #60904 - [13.x] Fix schedule:list timezone conversion for range, step, and wildcard cron expressions by @xiCO2k in #60877
v13.22.0
Immutable
release. Only release title and notes can be modified.
- [13.x] Fix PHP extensions in sqlite workflow job by @lucasmichot in #60850
- [13.x] Use new Stringable(...) instead of Str::of()/str() internally by @lucasmichot in #60852
- [13.x] Extract PHP setup steps into a shared composite action by @lucasmichot in #60851
- [13.x] add the exception to JobReleasedAfterException by @jackbayliss in #60823
- [13.x] Implement
creationTimeOfOldestPendingJobon the QueueFake by @jackbayliss in #60730 - [13.x] Check traits in resolveClassAttribute by @jackbayliss in #60566
- [13.x] Enable additional Rector rules by @lucasmichot in #60854
- [13.x] Optimize Str::ucfirst and Str::lcfirst using native PHP 8.4 functions by @bunyaminbilenkaratas in #60864
- [13.x] Fix queue name parameter in Mailer::later() by @Button99 in #60865
- [13.x] Support stream bodies in HTTP fake responses by @drewmt in #60834
- [13.x] Allow RateLimiter to be Macroable by @jackbayliss in #60869
- [13.x] Add a
#[BindWhen()]attribute to conditionally bind into the container by @ziadoz in #60862 - [13.x] Add timeout minutes to workflows by @jackbayliss in #60872
- [13.x] Restore iterable support to Arr::every() and Arr::some() by @Amirhf1 in #60876
- [13.x] ColumnDefinition::unsigned takes a parameter, which should be documented by @afk11 in #60875
- [13.x] Add multi-queue support to queue:clear command by @miladshakerdn in #60873
- [13.x] Fix Cache::touch() expiration handling by @Amirhf1 in #60878
- [13.x] Mark HTTP testing credentials as sensitive by @Amirhf1 in #60880
- [13.x] Allow faking DNS lookups in validation rules by @SjorsO in #60879
- [13.x] Fix iterable support in Arr::last() by @Amirhf1 in #60881
- [13.x] Support
Delayattribute when usingBus::batch& bulk by @jackbayliss in #60766
v13.21.1
Immutable
release. Only release title and notes can be modified.
Update version to v13.21.1