Skip to content

Releases: laravel/framework

v5.4.28

30 Jun 15:56
Compare
Choose a tag to compare

Added

  • Added avg() and average() as higher order proxies (#19628)
  • Added fresh() method to Eloquent collection (#19616, #19671)
  • Added ability to remove a global scope with another global scope (#19657)
  • Added Collection::intersectKey() method (#19683)
  • Support setting queue name via broadcastQueue() method (#19703, #19708)
  • Support default return on BelongsTo relations (#19733, #19788, 1137d86, ed0182b)
  • Added unless() method to query builder and collection (#19738, #19740)
  • Added array_random() helper (#19741, #19818, #19826)
  • Support multiple manifest files on mix() (#19764)

Changed

  • Escape default value passed to @yield directive (#19643)
  • Support passing multiple fields to different validation rule (#19637)
  • Only dispatch the MessageSent event if mails should be sent (#19690)
  • Removed duplicate / from public_path() (#19731)
  • Made ThrottlesLogins more customizable (#19787)
  • Support PostgreSQL insert statements with DEFAULT VALUES (#19804)

Fixed

  • Fixed BelongsTo bug with incrementing keys (#19631)
  • Fixed PDO return value bug in unprepared() (#19667)
  • Don't use event() helper in Http\Kernel (#19688)
  • Detect lock wait timeout as deadlock (#19749)
  • Improved escaping special characters in MySQL comments (#19798)
  • Fixed passing email as string to Event::emailOutputTo() (#19802)
  • Fixed withoutOverlapping() not creating mutex (#19834)

Removed

  • Removed role attribute from forms in stubs (#19792)

v5.4.27

15 Jun 19:44
Compare
Choose a tag to compare

Added

  • Added Collection::diffAssoc() method (#19604)

Changed

  • Updated PHPUnit whitelist (#19609)

Fixed

  • Update timestamps on soft delete only when they are used (#19627)

v5.4.26

14 Jun 04:12
Compare
Choose a tag to compare

Added

  • Added Event::nextRunDate() method (#19537, 09dd336)
  • Added null safe operator <=> to query builder operators list (#19539)
  • Added Macroable trait to RequestGuard (#19569)

Changed

  • Touch updated_at timestamp when soft deleting (#19538)
  • Accept argument list in Rule::in() and Rule::notIn() (#19555)
  • Support checking for strings job names using QueueFake (#19575)
  • Improved image ratio validation precision (#19542)

Fixed

  • Resume scheduled task if an error occurs (#19419)
  • Decode HTML entities in plain text emails (#19518)
  • Added missing locales to MessageSelector::getPluralIndex() (#19562)
  • Use strict check when object is passed to Collection::contains() (#19568)
  • Fixed jobs with a timeout of 0 (#19586)
  • Never pass Throwable to stopWorkerIfLostConnection() (#19591)

v5.4.25

07 Jun 14:59
Compare
Choose a tag to compare

Added

  • Added Macroable trait to FactoryBuilder (#19425)
  • Allow a plain text alternative view when using markdown within Mailables (#19436, ad2eaf7)
  • Added nested transactions support for SqlServer (#19439)

Changed

  • Moved env() helper to Support component (#19409)
  • Prevent BadMethodCallException in RedirectResponse::withErrors() (#19426)
  • Suppress error if calling Str::replaceFirst() with an empty search (#19427)
  • Removed the callable type hint for array_sort() (#19483)
  • Return the used traits from TestCase::setUpTraits() (#19486)

Fixed

  • Fixes and optimizations for Str::after() (#19428)
  • Fixed queue size when using Beanstalkd driver (#19465)
  • Check if a mutex can be created before running the callback task in CallbackEvent::run() (#19466)
  • Flip expected and actual value on TestResponse::assertCookie() (#19495)
  • Fixed undefined variable error in Mailable class (#19504)
  • Prevent error notice when database.collation is not set (#19507)

v5.4.24

30 May 14:26
Compare
Choose a tag to compare

Added

  • Support magic controller methods (#19168)
  • Added Gate resources (#19124)
  • Added Request::routeIs() method (#19202, 26681eb)
  • Route Route::isName() shorthand method (#19227)
  • Added support for custom columns in softDeletes() method (#19203)
  • Added ManagesLayouts::getSection() method (#19213)
  • Added Model::refresh() shorthand (#19174)
  • Added Container::forgetExtenders() method (#19269, 7c17bf5)
  • Added Filesystem::hash() method (#19256)
  • Added TestResponse::assertViewIs() method (#19291)
  • Added path to Paginator (#19314)
  • Added Collection::concat() method (#19318, 0f5337f)
  • Added make() method to HasOneOrMany and MorphOneOrMany relations (#19307)
  • Added str_after() helper function (#19357)
  • Added Router::apiResource() method (#19347)

Changed

  • Move $sizeRules and $numericRules properties from FormatsMessages to Validator (dc7e7cb)
  • Allows calls to Collection::times() without the $callback parameter (#19278)
  • Don't ignore jobs with a timeout of 0 (#19266)
  • Resolve database paginators from the container (#19328)
  • Added news to Pluralizer::$uncountable() (#19353)
  • Switched to using app()->getLocale() in app.stub (#19405)

Fixed

  • Fixed Container::makeWith() not using parameters when resolving interfaces (#19178)
  • Stop validating Memcached connection (#19192)
  • Fixed the position of bound() in Container::instance() (#19207)
  • Prevent applying global scopes on the factory while setting the connection (#19258)
  • Fixed database connection issue in queue worker (#19263)
  • Don't use HTML comments in notification email template (#19289)
  • Fire rebinding callback when using bind() method to bind abstract (#19288)
  • Return 0 from callScope() if $query->wheres is null (#19381)

v5.4.23

12 May 01:24
Compare
Choose a tag to compare

Added

  • Added Gate::abilities() accessor (#19143, e9e34b5)
  • Added ability to eager load counts via $withCount property (#19154)

Fixed

  • Fixed inversion of expected and actual on assertHeader (#19110)
  • Fixed filesystem bug in Filesystem::files() method on Windows (#19157)
  • Fixed bug in Container::build() (#19161, bf669e1)

Removed

  • Removed window.Laravel object (#19135)

v5.4.22

09 May 04:31
Compare
Choose a tag to compare

Added

  • Support dynamic number of keys in MessageBag::hasAny() (#19002)
  • Added Seeder::callSilent() method (#19007)
  • Add make() method to Eloquent query builder (#19015)
  • Support Arrayable on Eloquent's find() method (#19019)
  • Added SendsPasswordResetEmails::validateEmail() method (#19042)
  • Allow factory attributes to be factory instances themselves (#19055)
  • Implemented until() method on EventFake (#19062)
  • Added $encoding parameter to Str::length() (#19047, #19079)

Changed

  • Throw exception when invalid first argument is passed to cache() helper (d9459b2)
  • Use getAuthIdentifierName() in Authenticatable::getAuthIdentifier() (#19038)
  • Clone queries without order by for aggregates (#19064)
  • Force host on password reset notification (cef1055)

Fixed

  • Set data key when testing file uploads in nested array (#18954)
  • Fixed a bug related to sub select queries and extra select statements (#19013)
  • Resolve aliases from container when using parameters (#19071)
  • Stop worker if database disconnect occurred (#19080, 583b1b8)
  • Fixed internal call to assertJson() in assertJsonStructure() (#19090)

v5.4.21

28 Apr 15:48
Compare
Choose a tag to compare

Added

Fixed

  • Reverted queue prefix option #18860 (#18987)
  • Return null if key is not found from RedisStore:many() (#18984)

v5.4.20

27 Apr 15:23
Compare
Choose a tag to compare

Added

  • Added higher order tap (3abc4fb)
  • Added Collection::mapToGroups() (#18949)
  • Added FactoryBuilder::lazy() method (#18823)
  • Support Redis Sentinel configuration (#18850)
  • Added queue.prefix option (#18860, 8510bf9)
  • Allow getDisplayableAttribute() to be used in custom replacers (#18895)
  • Added resourceMethodsWithoutModels() method to AuthorizesRequests (#18916, #18964)
  • Added name to home route (#18942)

Changed

  • Return PendingDispatch for Kernel::queue() (51647eb)
  • Made RedisManager::resolve() public (#18830, eb9b99d)
  • Changed email body color to match wrapper color (#18824)
  • Break and hyphenate long words in emails (#18827)
  • Force database migration to use the write PDO (#18898)
  • Support JSON_PARTIAL_OUTPUT_ON_ERROR on JsonResponse (#18917, db5f011)

Fixed

  • Set connection on model factory (#18846, 95a0663)
  • Fixed route parameter binding for routes with leading slashes (#18855)
  • Don't call cleanParameterBag() twice during JSON request (#18840)
  • Prevent exception in getActualClassNameForMorph() when morph map is null (#18921)
  • Use protocol-relative URL in mix() helper (#18943)
  • Cast $viaChannels to array (#18960)

v5.4.19

16 Apr 17:31
Compare
Choose a tag to compare

Added

  • Added ability to send link_names parameter in Slack notification (#18765)
  • Added Mailable::hasFrom() method (#18790)

Changed

  • Made Mailer macroable (#18763)
  • Made SessionGuard macroable (#18796)
  • Improved queue worker output (#18773)
  • Added newModelInstance() method to Eloquent Builder (#18775)
  • Use assertions instead of exceptions in MocksApplicationServices (#18774)

Fixed

  • Fixed memory issue in Container (#18812)
  • Set database connection while retrieving models (#18769)