Skip to content

Latest commit

 

History

History
471 lines (376 loc) · 35 KB

CHANGELOG-5.2.md

File metadata and controls

471 lines (376 loc) · 35 KB

Release Notes

v5.2.45 (2016-08-26)

Fixed

  • Revert changes to Eloquent Builder that breaks firstOr* methods (#15018)
  • Revert aggregate changes in #14793 (#14994)

v5.2.44 (2016-08-23)

Added

  • Added BelongsToMany::syncWithoutDetaching() method (33aee31)
  • Added withoutTrashed() method to SoftDeletingScope (#14805)
  • Support Flysystem's disable_asserts config value (#14864)

Changed

  • Support multi-dimensional $data arrays in invalid() and valid() methods (#14651)
  • Support column aliases in chunkById() (#14711)
  • Re-attempt transaction when encountering a deadlock (#14930)

Fixed

  • Only return floats or integers in aggregate() (#14781)
  • Fixed numeric aggregate queries (#14793)
  • Create new row in firstOrCreate() when a model has a mutator (#14656)
  • Protect against empty paths in the view:clear command (#14812)
  • Convert $attributes in makeHidden() to array (#14852, #14857)
  • Prevent conflicting class name import to namespace in ValidatesWhenResolvedTrait (#14878)

v5.2.43 (2016-08-10)

Changed

  • Throw exception if $amount is not numeric in increment() and decrement() (915cb84)

v5.2.42 (2016-08-08)

Added

  • Allow BelongsToMany::detach() to accept a collection (#14412)
  • Added whereTime() and orWhereTime() to query builder (#14528)
  • Added PHP 7.1 support (#14549)
  • Allow collections to be created from objects that implement Traversable (#14628)
  • Support dot notation in Request::exists() (#14660)
  • Added missing Model::makeHidden() method (#14641)

Changed

  • Return true when $key is empty in MessageBag::has() (#14409)
  • Optimized Filesystem::moveDirectory (#14362)
  • Convert $count to integer in Str::plural() (#14502)
  • Handle arrays in validateIn() method (#14607)

Fixed

  • Fixed an issue with wherePivotIn() (#14397)
  • Fixed PDO connection on HHVM (#14429)
  • Prevent make:migration from creating duplicate classes (#14432)
  • Fixed lazy eager loading issue in LengthAwarePaginator collection (#14476)
  • Fixed plural form of Pokémon (#14525)
  • Fixed authentication bug in TokenGuard::validate() (#14568)
  • Fix missing middleware parameters when using authorizeResource() (#14592)

Removed

  • Removed duplicate interface implementation in Dispatcher (#14515)

v5.2.41 (2016-07-20)

Changed

  • Run session garbage collection before response is returned (#14386)

Fixed

  • Fixed pagination bug introduced in #14188 (#14389)
  • Fixed median() issue when collection is out of order (#14381)

v5.2.40 (2016-07-19)

Added

  • Added --tags option to cache:clear command (#13927)
  • Added scopes() method to Eloquent query builder (#14049)
  • Added hasAny() method to MessageBag (#14151)
  • Allowing passing along transmission options to SparkPost (#14166)
  • Added Filesystem::moveDirectory() (#14198)
  • Added increment() and decrement() methods to session store (#14196)
  • Added pipe() method to Collection (#13899)
  • Added additional PostgreSQL operators (#14224)
  • Support :: expressions in Blade directive names (#14265)
  • Added median() and mode() methods to collections (#14305)
  • Add tightenco/collect to Composer replace list (#14118, #14127)

Changed

  • Don't release jobs that have been reserved too long (#13833)
  • Throw Exception if Queue has no encrypter (#14038)
  • Cast unique validation rule id to integer (#14076)
  • Ensure database transaction count is not negative (#14085)
  • Use session.lifetime for CSRF cookie (#14080)
  • Allow the shuffle() method to be seeded (#14099)
  • Allow passing of multiple keys to MessageBag::has() (a0cd0ae)
  • Allow model connection in newFromBuilder() to be overridden (#14194)
  • Only load pagination results if $total is greater than zero (#14188)
  • Accept fallback parameter in UrlGenerator::previous (#14207)
  • Only do use call if database is not empty (#14225)
  • Removed unnecessary nesting in the Macroable trait (#14222)
  • Refactored DatabaseQueue::getNextAvailableJob() (cffcd34)
  • Look for getUrl() method on Filesystem adapter before throwing exception (#14246)
  • Make seeIsSelected() work with <option> elements without value attributes (#14279)
  • Improved performance of Filesystem::sharedGet() (#14319)
  • Throw exception if view cache path is empty (#14291)
  • Changes several validation methods return type from integers to booleans (#14373)
  • Remove files from input in withInput() method (85249be)

Fixed

  • Require file instance for dimensions validation rule (#14025)
  • Fixes for SQL Server processInsertGetId() with ODBC (#14121)
  • Fixed PostgreSQL processInsertGetId() with PDO::FETCH_CLASS (#14115)
  • Fixed PDO::FETCH_CLASS support in Connection::cursor() (#14052)
  • Fixed eager loading of multi-level morphTo relationships (#14190)
  • Fixed MySQL multiple-table DELETE (#14179)
  • Always cast vendor:publish tags to array (#14228)
  • Fixed translation capitalization when replacements are a numerical array (#14249)
  • Fixed double urldecode() on route parameters (#14370)

Removed

  • Remove method overwrites in PostgresGrammar (#14372)

v5.2.39 (2016-06-17)

Added

  • Added without() method to Eloquent query builder (#14031)
  • Added keyType property Eloquent models to set key type cast (#13985)
  • Added support for mail transport StreamOptions (#13925)
  • Added validationData() method to FormRequest (#13914)

Changed

  • Only set names for MySQL connections if charset is set in config (#13930)
  • Support recursive container alias resolution (#13976)
  • Use late static binding in PasswordBroker (#13975)
  • Make sure Ajax requests are not Pjax requests in FormRequest (#14024)
  • Set existence state of expired database sessions, instead of deleting them (53c0440)
  • Release Beanstalkd jobs before burying them (#13963)

Fixed

  • Use getIncrementing() method instead of the $incrementing attribute (#14005)
  • Fixed fatal error when services.json is empty (#14030)

v5.2.38 (2016-06-13)

Changed

  • Convert multiple Model::fresh() arguments to array before passing to with() (#13950)
  • Iterate only through files that contain a namespace in app:name command. (#13961)

Fixed

  • Close swift mailer connection after sending mail (#13583)
  • Prevent possible key overlap in Str::snake cache (#13943)
  • Fixed issue when eager loading chained MorphTo relationships (#13967)
  • Delete database session record if it's expired (09b09eb)

v5.2.37 (2016-06-10)

Added

  • Added hasArgument() and hasOption() methods to Command class (#13919)
  • Added $failedId property to JobFailed event (#13920)

Fixed

  • Fixed session expiration on several drivers (0831312)

v5.2.36 (2016-06-06)

Added

  • Allow passing along options to the S3 client (#13791)
  • Allow nested WHERE clauses in whereHas() queries (#13794)
  • Support DateTime instances in Before/After date validation (#13844)
  • Support queueing collections (d159f02)

Changed

  • Reverted SparkPost driver back to email_rfc822 parameter for simplicity (#13780)
  • Simplified Model::__isset() (8fb89c6)
  • Set exception handler even on non-daemon queue:work calls (d5bbda9)
  • Show handler class names in queue:work console output (4d7eb59)
  • Use queue events to update the console output of queue:work (ace7f04)
  • Made ResetsPasswords trait easier to customize (#13818)
  • Refactored Eloquent relations and scopes (#13824, #13884, #13894)
  • Respected session.http_only option in StartSession middleware (#13825)
  • Don't return in ApcStore::forever() (#13871)
  • Allow Redis key expiration to be lower than one minute (#13810)

Fixed

  • Fixed morphTo relations across database connections (#13784)
  • Fixed morphTo relations without soft deletes (13806)
  • Fixed edge case on morphTo relations macro call that only exists on the related model (#13828)
  • Fixed formatting of updatedAt timestamp when calling touch() on BelongsToMany relation (#13799)
  • Don't get $id from Recaller in Auth::id() (#13769)
  • Fixed AuthorizesResources trait (25443e3)

Removed

  • Removed unused ArrayStore::putMultiple() method (#13840)

v5.2.35 (2016-05-30)

Added

  • Added failed login event (#13761)

Changed

  • Always cast FileStore::expiration() return value to integer (#13708)
  • Simplified Container::isCallableWithAtSign() (#13757)
  • Pass key to the Collection::keyBy() callback (#13766)
  • Support unlimited log files by setting app.log_max_files to 0 (#13776)
  • Wathan-ize MorphTo::getEagerLoadsForInstance() (#13741, #13777)

Fixed

  • Fixed MySQL JSON boolean binding update grammar (38acdd8)
  • Fixed loading of nested polymorphic relationships (#13737)
  • Fixed early return in AuthManager::shouldUse() (5b88244)
  • Fixed the remaining attempts calculation in ThrottleRequests (#13756, #13759)
  • Fixed strict TypeError in AbstractPaginator::url() (#13758)

v5.2.34 (2016-05-26)

Added

  • Added correct MySQL JSON boolean handling and updating grammar (#13242)
  • Added stream option to mail TransportManager (#13715)
  • Added when() method to eloquent query builder (#13726)

Changed

  • Catch exceptions in Worker::pop() to prevent log spam (#13688)
  • Use write connection when validating uniqueness (#13718)
  • Use withException() method in Handler::toIlluminateResponse() (#13712)
  • Apply constraints to morphTo relationships when using eager loading (#13724)
  • Use SETs rather than LISTs for storing Redis cache key references (#13731)

Fixed

v5.2.33 (2016-05-25)

Added

  • Allow query results to be traversed using a cursor (#13030)
  • Added support for log levels (#13513)
  • Added inRandomOrder() method to query builder (#13642)
  • Added support for custom connection in PasswordBrokerManager (#13646)
  • Allow connection timeouts in TransportManager (#13621)
  • Added missing $test argument to UploadedFile (#13656)
  • Added authenticate() method to guards (#13651)

Changed

  • Use locking to migrate stale jobs (26a24d6)
  • Avoid chunkById duplicating orders clause with the same column (#13604)
  • Fire RouteMatched event on route:list command (#13474)
  • Set user resolver for request in AuthManager::shouldUse() (bf5303f)
  • Always execute use call, unless database is empty (#13701, ef770ed)
  • Allow elixir() $buildDirectory to be null. (#13661)
  • Simplified calling Model::replicate() with $except argument (#13676)
  • Allow auth events to be serialized (#13704)
  • Added for and id attributes to auth scaffold (#13689)
  • Aquire lock before deleting reserved job (4b502dc)

Fixed

  • Prefix timestamps when updating many-to-many relationships (#13519)
  • Fixed missing wheres defined on the relation when creating the subquery for a relation count (#13612)
  • Fixed Model::makeVisible() when $visible property is not empty (#13625)
  • Fixed PostgreSQL's Schema::hasTable() (#13008)
  • Fixed url validation rule when missing trailing slash (#13700)

v5.2.32 (2016-05-17)

Added

  • Allow user to enable/disable foreign key checks dynamically (#13333)
  • Added file validation rule (#13371)
  • Added guestMiddleware() method to get guest middleware with guard parameter (#13384)
  • Added Pivot::fromRawAttributes() to create a new pivot model from raw values returned from a query (f356419)
  • Added Builder::withCount() to add a relationship subquery count (#13414)
  • Support reply_to field when using SparkPost (#13410)
  • Added validation rule for image dimensions (#13428)
  • Added "Generated Columns" support to MySQL grammar (#13430)
  • Added Response::throwResponse() (#13473)
  • Added page parameter to the simplePaginate() method (#13502)
  • Added whereColumn() method to Query Builder (#13549)
  • Allow File::allFiles() to show hidden dot files (#13555)

Changed

  • Return null instead of 0 for a default BelongsTo key (#13378)
  • Avoid useless logical operation (#13397)
  • Stop using {!! !!} for csrf_field() (#13398)
  • Improvements for SessionGuard methods loginUsingId() and onceUsingId() (#13393)
  • Added Work-around due to lack of lastInsertId() for ODBC for MSSQL (#13423)
  • Ensure MigrationCreator::create() receives $create as boolean (#13439)
  • Allow custom validators to be called with out function name (#13444)
  • Moved the payload column of jobs table to the end (#13469)
  • Stabilized table aliases for self joins by adding count (#13401)
  • Account for __isset changes in PHP 7 (#13509)
  • Bring back support for Carbon instances to before and after validators (#13494)
  • Allow method chaining for MakesHttpRequest trait (#13529)
  • Allow Request::intersect() to accept argument list (#13515)

Fixed

  • Accept != and <> as operators while value is null (#13370)
  • Fixed SparkPost BCC issue (#13361)
  • Fixed fatal error with optional morphTo relationship (#13360)
  • Fixed using onlyTrashed() and withTrashed() with whereHas() (#13396)
  • Fixed automatic scope nesting (#13413)
  • Fixed scheduler issue when using user() and withoutOverlapping() combined (#13412)
  • Fixed SqlServer grammar issue when table name is equal to a reserved keyword (#13458)
  • Fixed replacing route default parameters (#13514)
  • Fixed missing model attribute on ModelNotFoundException (#13537)
  • Decrement transaction count when beginTransaction() errors (#13551)
  • Fixed seeJson() issue when comparing two equal arrays (#13531)
  • Fixed a Scheduler issue where would no longer run in background (#12628)
  • Fixed sending attachments with SparkPost (#13577)

v5.2.31 (2016-04-27)

Added

  • Added missing suggested dependency SuperClosure (09a793f)
  • Added ODBC connection support for SQL Server (#13298)
  • Added Request::hasHeader() method (#13271)
  • Added @elsecan and @elsecannot Blade directives (#13256)
  • Support booleans in required_if Validator rule (#13327)

Changed

  • Simplified Translator::parseLocale() method (#13244)
  • Simplified Builder::shouldRunExistsQuery() method (#13321)
  • Use Gate contract instead of Facade (#13260)
  • Return result in SoftDeletes::forceDelete() (#13272)

Fixed

  • Fixed BCC for SparkPost (#13237)
  • Use Carbon for everything time related in DatabaseTokenRepository (#13234)
  • Fixed an issue with data_set() affecting the Validator (#13224)
  • Fixed setting nested namespaces with app:name command (#13208)
  • Decode base64 encoded keys before using it in PasswordBrokerManager (#13270)
  • Prevented race condition in RateLimiter (#13283)
  • Use DIRECTORY_SEPARATOR to create path for migrations (#13254)
  • Fixed adding implicit rules via sometimes() method (#12976)
  • Fixed Schema::hasTable() when using PostgreSQL (#13008)
  • Allow seeAuthenticatedAs() to be called with any user object (#13308)

Removed

  • Removed unused base64 decoding from Encrypter (#13291)

v5.2.30 (2016-04-19)

Added

  • Added messages and custom attributes to the password reset validation (#12997)
  • Added Before and After dependent rules array (#13025)
  • Exposed token methods to user in password broker (#13054)
  • Added array support on Cache::has() (#13028)
  • Allow objects to be passed as pipes (#13024)
  • Adding alias for FailedJobProviderInterface (#13088)
  • Allow console commands registering from Kernel class (#13097)
  • Added the ability to get routes keyed by method (#13146)
  • Added PostgreSQL specific operators for jsonb type (#13161)
  • Added makeHidden() method to the Eloquent collection (#13152)
  • Added intersect() method to Request (#13167)
  • Allow disabling of model observers in tests (#13178)
  • Allow ON clauses on cross joins (#13159)

Changed

  • Use relation setter when setting relations (#13001)
  • Use isEmpty() to check for empty message bag in Validator::passes() (#13014)
  • Refresh remember_token when resetting password (#13016)
  • Use multibyte string functions in Str class (#12953)
  • Use CloudFlare CDN and use SRI checking for assets (#13044)
  • Enabling array on method has() (#13028)
  • Allow unix timestamps to be numeric in Validator (da62677)
  • Reverted forcing middleware uniqueness (#13075)
  • Forget keys that contain periods (#13121)
  • Don't limit column selection while chunking by id (#13137)
  • Prefix table name on getColumnType() call (#13136)
  • Moved ability map in AuthorizesResources trait to a method (#13214)
  • Make sure unguarded() does not change state on exception (#13186)
  • Return $this in InteractWithPages::within() to allow method chaining (13200)

Fixed

  • Fixed a empty value case with Arr:dot() (#13009)
  • Fixed a Scheduler issues on Windows (#13004)
  • Prevent crashes with bad Accept headers (#13039, #13059)
  • Fixed explicit depending rules when the explicit keys are non-numeric (#13058)
  • Fixed an issue with fluent routes with uses() (#13076)
  • Prevent generating listeners for listeners (3079175)

Removed

  • Removed unused parameter call in Filesystem::exists() (#13102)
  • Removed duplicate "[y/N]" from confirmable console commands (#13203)
  • Removed unused parameter in route() helper (#13206)

v5.2.29 (2016-04-02)

Fixed

  • Fixed Arr::get() when given array is empty (#12975)
  • Add backticks around JSON selector field names in PostgreSQL query builder (#12978)
  • Reverted #12899 (#12991)

v5.2.28 (2016-04-01)

Added

Changed

  • Optimized validation performance of large arrays (#12651)
  • Never retry database query, if failed within transaction (#12929)
  • Allow customization of email sent by ResetsPasswords::sendResetLinkEmail() (#12935, aae873e)
  • Improved file system tests (#12940, #12949, #12970)
  • Allowing merging an array of rules (a5ea1aa)
  • Consider implicit attributes while guessing column names in validator (#12961, a3827cf)
  • Reverted #12307 (#12928)

Fixed

  • Fixed elixir manifest caching to detect different build paths (#12920)
  • Fixed Str::snake() to work with UTF-8 strings (#12923)
  • Trim the input name in the generator commands (#12933)
  • Check for non-string values in validation rules (#12973)
  • Add backticks around JSON selector field names in MySQL query builder (#12964)
  • Fixed terminable middleware assigned to controller (#12899, 74b0636)

v5.2.27 (2016-03-29)

Added

  • Allow ignoring an id using an array key in the unique validation rule (#12612)
  • Added InteractsWithSession::assertSessionMissing() (#12860)
  • Added chunkById() method to query builder for faster chunking of large sets of data (#12861)
  • Added Blade @hasSection directive to determine whether something can be yielded (#12866)
  • Allow optional query builder calls via when() method (#12878)
  • Added IP and MAC address column types (#12884)
  • Added Collections union method for true unions of two collections (#12910)

Changed

  • Allow array size validation of implicit attributes (#12640)
  • Separated logic of Blade @push and @section directives (#12808)
  • Ensured that middleware is applied only once (#12911)

Fixed

  • Reverted improvements to Redis cache tagging (#12897)
  • Removed route group from make:auth stub (#12903)

v5.2.26 (2016-03-25)

Added

  • Added support for Base64 encoded Encrypter keys (370ae34)
  • Added EncryptionServiceProvider::getEncrypterForKeyAndCipher() (17ce4ed)
  • Added Application::environmentFilePath() (370ae34)

Fixed

  • Fixed mock in ValidationValidatorTest::testValidateMimetypes() (7f35988)

v5.2.25 (2016-03-24)

Added

  • Added bootstrap Composer scripts to avoid loading of config/compiled files (#12827)

Changed

  • Use File::guessExtension() instead of UploadedFile::guessClientExtension() (87e6175)

Fixed

  • Fix an issue with explicit custom validation attributes (#12822)
  • Fix an issue where a view would run the BladeEngine instead of the PhpEngine (#12830)
  • Prevent wrong auth driver from causing unexpected end of execution (#12821)