- Added object based
uniqueandexistsvalidation rules (#15809)
- Added model factory "states" (#14241)
Collection::only()now returns all items if$keysisnull(#15695)
- Added workaround for Memcached 3 on PHP7 when using
many()(#15739) - Fixed bug in
Validator::hydrateFiles()when removing the files array (#15663) - Fixed model factory bug when
$amountis zero (#15764, #15779) - Prevent multiple notifications getting sent out when using the
Notificationfacade (#15789)
- Added "furniture" and "wheat" to
Pluralizer::uncountable()(#15703) - Allow passing
$keystoModel::getAttributes()(#15722) - Added database blueprint for soft deletes with timezone (#15737)
- Added given guards to
AuthenticationException(#15745) - Added Seneca quote to
Inspirecommand (#15747) - Added
div#appto auth layout stub (08bcbdb) - Added PHP 7.1 timeout handler to queue worker (cc9e1f0)
- Changed visibility of
Route::getController()to public (#15678) - Changed notifications
idcolumn type touuid(#15719)
- Fixed PDO bindings when using
whereHas()(#15740)
- Use granular notification queue jobs (#15681, 3a5e510)
- Reverted recent changes to the queue (d8dc8dc)
- Fixed
DaemonCommandcommand name (b681bff)
- Added
serialize()andunserialize()onRedisStore(#15657)
- Use
$signaturecommand style onDaemonCommandandWorkCommand(#15677)
- Added support for priority level in mail notifications (#15651)
- Added missing
$minutesproperty onCookieSessionHandler(#15664)
- Removed forking and pcntl requirements while still supporting timeouts (#15650)
- Added
Kernel::setArtisan()method (#15531) - Added a default method for validation message variable replacing (#15527)
- Added support for a schema array in Postgres config (#15535)
- Added
SoftDeletes::isForceDeleting()method (#15580) - Added support for tasks scheduling using command classes instead of signatures (#15591)
- Added support for passing array of emails/user-objects to
Mailable::to()(#15603) - Add missing interface methods in
Registrarcontract (#15616)
- Let the queue worker sleep for 1s when app is down for maintenance (#15520)
- Improved validator messages for implicit attributes errors (#15538)
- Use
Carbon::now()->getTimestamp()instead oftime()in various places (#15544, #15545, c5984af, #15549) - Removed redundant condition from
updateOrInsert()(#15540) - Throw
LogicExceptionon container alias loop (#15548) - Handle empty
$filesinRequest::duplicate()(#15558) - Support exact matching of custom validation messages (#15557)
- Decode URL in
Request::segments()andRequest::is()(#15524) - Replace only the first instance of the app namespace in Generators (#15575)
- Fixed artisan
--envissue where environment file wasn't loaded (#15629) - Fixed migration with comments using
ANSI_QUOTESQL mode (#15620) - Disabled queue worker process forking until it works with AWS SQS (23c1276)
- Fire
Registeredevent when a user registers (#15401) - Added
Container::factory()method (#15415) - Added
$defaultparameter to query/eloquent builderwhen()method (#15428, #15442) - Added missing
$notifiableparameter toResetPassword::toMail()(#15448)
- Updated
ServiceProviderto useresourcePath()overbasePath()(#15400) - Throw
RuntimeExceptionifpcntl_fork()doesn't exists (#15393) - Changed visibility of
Container::getAlias()to public (#15444) - Changed visibility of
VendorPublishCommand::publishTag()to protected (#15461) - Changed visibility of
TestCase::afterApplicationCreated()to public (#15493) - Prevent calling
Modelmethods when calling them as attributes (#15438) - Default
$callbacktonullin eloquent builderwhereHas()(#15475) - Support newlines in Blade's
@foreach(#15485)
- Reverted "Allow passing a
ClosuretoView::share()#15312" (#15312) - Resolve issues with multi-value select elements (#15436)
- Fixed issue with
X-HTTP-METHOD-OVERRIDEspoofing inRequest(#15410)
- Removed unused
SendsPasswordResetEmails::resetNotifier()method (#15446) - Removed uninstantiable
Seederclass (#15450) - Removed unnecessary variable in
AuthenticatesUsers::login()(#15507)
- Added missing
MailableMailer::later()method (#15364) - Added missing
$queueparameter onSyncJob(#15368) - Added SSL options for PostgreSQL DSN (#15371)
- Added ability to disable touching of parent when toggling relation (#15263)
- Added username, icon and channel options for Slack Notifications (#14910)
- Added missing translation for
mimetypesvalidation (#15209, #3921) - Added ability to check if between two times when using scheduler (#15216, #15306)
- Added
X-RateLimit-Resetheader to throttled responses (#15275) - Support aliases on
withCount()(#15279) - Added
Filesystem::isReadable()(#15289) - Added
Collection::split()method (#15302) - Allow passing a
ClosuretoView::share()(#15312) - Added support for
Mailablemessages inMailChannel(#15318) - Added
with*()syntax toMailableclass (#15316) - Added
--pathoption formigrate:rollback/refresh/reset(#15251) - Allow numeric keys on
morphMap()(#15332) - Added fakes for bus, events, mail, queue and notifications (5deab59)
- Update
Model::save()to returntruewhen no error occurs (#15236) - Optimized performance of
Arr::first()(#15213) - Swapped
drop()fordropIfExists()in all stubs (#15230) - Allow passing object instance to
class_uses_recursive()(#15223) - Improved handling of failed file uploads during validation (#15166)
- Hide pagination if it does not have multiple pages (#15246)
- Cast Pusher message to JSON in
validAuthentiactoinResponse()(#15262) - Throw exception if queue failed to create payload (#15284)
- Call
getUrl()first inFilesystemAdapter::url()(#15291) - Consider local key in
HasManyThroughrelationships (#15303) - Fail faster by checking Route Validators in likely fail order (#15287)
- Make the
FilesystemAdapter::delete()behave likeFileSystem::delete()(#15308) - Don't call
floor()inCollection::median()(#15343) - Always return number from aggregate method
sum()(#15345)
- Reverted "Hide empty paginators" #15125 (#15241)
- Fixed empty
multifileuploads (#15250) - Fixed regression in
save(touch)option (#15264) - Fixed lower case model names in policy classes (15270)
- Allow models with global scopes to be refreshed (#15282)
- Fix
ChannelManager::getDefaultDriver()implementation (#15288) - Fire
illuminate.queue.loopingevent before running daemon (#15290) - Check attempts before firing queue job (#15319)
- Fixed
morphTo()naming inconsistency (#15334)
- Added
requiredattributes to auth scaffold (#15087) - Support custom recipient(s) in
MailMessagenotifications (#15100) - Support custom greeting in
SimpleMessagenotifications (#15108) - Added
prependLocation()method toFileViewFinder(#15103) - Added fluent email priority setter (#15178)
- Added
send()andsendNow()to notification factory contract (0066b5d)
- Defer resolving of PDO connection until needed (#15031)
- Send plain text email along with HTML email notifications (#15016, #15092, #15115)
- Stop further validation if a
requiredrule fails (#15089) - Swaps
drop()fordropIfExists()in migration stub (#15113) - The
resource_path()helper now relies onApplication::resourcePath()(#15095) - Optimized performance of
Str::random()(#15112) - Show
app.namein auth stub (#15138) - Switched from
htmlentities()tohtmlspecialchars()ine()helper (#15159) - Hide empty paginators (#15125)
- Fixed
migrate:rollbackwithFETCH_ASSOCenabled (#15088) - Fixes query builder not considering raw expressions in
whereIn()(#15078) - Fixed notifications serialization mistake in
ChannelManager(#15106) - Fixed session id collisions (#15206)
- Fixed extending cache expiration time issue in
filecache (#15164)
- Removed data transformation in
Response::json()(#15137)
- Added ability to set from address for email notifications (#15055)
- Support implicit keys in
MessageBag::get()(#15063) - Allow passing of closures to
assertViewHas()(#15074) - Strip protocol from Route group domains parameters (#15070)
- Support dot notation as callback in
Arr::sort()(#15050) - Use Redis database interface instead of implementation (#15041)
- Allow closure middleware to be registered from the controller constructor (#15080, abd85c9)
- Fixed plural form of Emoji (#15068)
- Fixed testing of Eloquent model events (#15052)
- Revert changes to Eloquent
Builderthat breaksfirstOr*methods (#15018)
- Support unversioned assets in
elixir()function (#14987) - Changed visibility of
BladeCompiler::stripParentheses()topublic(#14986) - Use getter instead of accessing the properties directly in
JoinClause::__construct()(#14984) - Replaced manual comparator with
asortinCollection::sort()(#14980) - Use
query()instead ofinput()for key lookup inTokenGuard::getTokenForRequest()(#14985)