Skip to content

ryross/framework

 
 

Repository files navigation

Laravel 4 Beta Change Log

Beta 5

  • Added Model::destroy method to Eloquent.
  • Touch owning models on delete.
  • Added Str::macro method.
  • Calling update on a Model instance will fill and update that model.
  • Allow specification of methods when pushing to Queue (Queue::push('Class@method')).
  • Removed HTML from default formatting in MessageBag.
  • Made Eloquent deleting event halting.
  • Added Auth::basic for quickly implementing HTTP Basic authentication.
  • Use Predis as our Redis back-end. Supports pipelining, client side sharding / clustering.
  • Implement sectionable caching across all drivers which support incrmeent / decrement.
  • Added Redirect::home method from Laravel 3.
  • Added Crypt::setKey, Crypt::setCipher, and Crypt::setMode.
  • Allow "lazy" eager loading from an individual model: $user->load('orders.lines');.
  • Added renameColumn support to schema builder.
  • Added dropColumn support to SQLite schema builder.
  • Added url option to configuration for use by the Artisan CLI.
  • dropColumn now supports dynamic argument lists.
  • Pass route and request to Closure based controller before filters.
  • Added Auth::onceBasic method for easier API integration with basic auth.
  • Added named view implementation which was in Laravel 3.
  • Migrated entire session back-end to Symfony HttpFoundation Session. New native driver. All drivers are available and work the same. New sessions will not be backwards compatible after updating.
  • Renamed Session::getToken to Session::token.
  • Added a few more helper methods to the Collection class.
  • Removed dropColumns function.
  • Added chainable header method to Http Response.
  • Implementing baked-in support for Iron.io "push queues" via Queue::marshal. No daemon processes needed!
  • Added queue:subscribe command for registering a URL end-point with an Iron.io push queue.
  • Added support for pushing anonymous functions onto the Queue. Wait for me to screencast this! Proceed with caution - black magic involved.
  • Allow for an array of expressions to be passed to where on route, keyed by parameter.
  • Allow the passing of an array to the appends method of the Paginator.
  • Added Html::mailto and Html::email from Laravel 3.
  • Added Mail::queue, Mail::later, Mail::queueOn, and Mail::laterOn. Screencast forthcoming.
  • Added URL::full method as alias into Request::fullUrl.
  • Set default encryption mode to cbc. Crypt::setMode is available if you wish to use previous mode of ctr.
  • Added Redirect::guest and Redirect::intended to simplify sending users to intended location.
  • Fixed cookie lifetimes not being updated on each page load.
  • Added has method for checking the quantity of related models from a parent query.
  • Added sort and sortBy methods to support Collection class.
  • Reimplemented keep and reflash for preserving flash data across more than one request.
  • Fixed bug where flash data was not carried through multiple requests.
  • Added ability to pass Closure as third parameter to Route::model to determine not found behavior.
  • Allow for Class@method syntax to be used with Validator::extend.
  • Added @overwrite Blade directive for forcing a full section overwrite.
  • Added visible property to Eloquent that is white-list version of hidden.
  • Using pluck on Eloquent queries will now call accessors.
  • Tweaked behavior of Redis sections to remove "forever" keys from storage.
  • Allow package views to be overriden by the application in view/packages/vendor/package, etc.
  • Added required_if validation rule.
  • Added DB::reconnect method to DatabaseManager.
  • Fix bug causing increment calls on model instances to update the whole table.
  • Added modelKeys function to the Eloquent collection class.
  • Added associate method to the BelongsTo relationship.
  • Added ability to register connections in the IoC container.
  • Added Schema::hasColumn method.
  • Arrays returned from routes / controllers are now turned into JSON.
  • Collection map and filter both return new Collection instances now.
  • Added support for wildcard event listeners. For example, Event::listen('view.*', function() {}).
  • Fix bug in translator replacements for strings that have the same beginning.
  • Added ability to pull values out of relationships, etc. on FormBuilder object value pulls.
  • Added ability to pass a name array as third parameter to Route::controller.
  • Added replicate method to Eloquent model.
  • Added slice method to Collection.
  • Fixed generation of namespaced resource controllers.
  • Send user to the password reminder e-mail view.
  • Added support for union statements in query builder.
  • Added ability to add more conditions on exists validation rule.
  • Added support for maintenance mode via php artisan down and php artisan up.
  • Added "soft delete" support to Eloquent via new "softDelete" property. restore method added to "un-delete".
  • Added trashed method to Eloquent model and trashed to Eloquent builder.
  • Renamed merge method to collapse and added new merge method in Collection.
  • Added auth.attempt event and attempting method.
  • Allow passing an array to View::share.
  • Added has method to cache sections.
  • Allow "dot" notation access into session arrays.
  • Added smallInteger to query builder.
  • Added dd and array_pull helpers.
  • Fix bug that caused pluralizer to not respect casing.
  • Fix attribute handling bug in validation messages like required_if, etc.
  • Include CSRF tokens by default in every non-GET form.
  • updated_at model timestamps are now automatically handled for ad-hoc queries.
  • Allow pattern filters to be specified with an HTTP verb constraint.
  • Added bigInteger and mediumInteger on schema builder.
  • Fix bug causing Eloquent to override user specified timestamps on save.
  • Added observe method to Eloquent models to allow for registering observer classes.
  • Added forget method to event dispatcher to allow all listeners for an event to be removed.
  • created_at, updated_at and deleted_at are now Carbonized by default.
  • Added getJobId for all queue drivers.
  • Added assertResponseStatus method to base test case.

Beta 4

  • Added Model::creating(Closure) and Model::updating(Closure) methods for hooking into Eloquent save events.
  • Added Model::saving(Closure) and Model::saved(Closure) methods for hooking into Eloquent save events.
  • Added Event::queue and Event::flush.
  • Added a Str class in support component. Adopted Patchwork UTF-8 to provide solid UTF-8 handling for the framework.
  • Allow Eloquent attributes to be accessed by camelCase in addition to snake_case.
  • Added App::environment method.
  • Added resolving method to IoC container for catching resolutions.
  • Added shouldReceive and swap methods to facade.
  • Added bound method to the IoC container.
  • Utilize checkdate in the date validation rule to make sure the date is actually valid.
  • Allow controller actions in base classes to be routed via Route::controller.
  • Encode queue payloads as JSON instead of serializing, to make the Queue place nicely with other languages.
  • Added Model::created(Closure) and Model::updated(Closure) methods for hooking into Eloquent post-save events.
  • Added Model::boot static method for a one time "booting" method for models.
  • Passing null into a where call will now short-cut into whereNull.
  • Changed Blade {{ }} to not escape. Made the triple braces escape.
  • Added DB::getName to get the configured name of the connection.
  • Made Eloquent casing agnostic. Will use whatever casing the properties use. Added snakeAttributes property to model (default true) to control casing on relationships when using toArray.
  • Added restart identity to Postgres truncate SQL.
  • Added Log::listen callback and illuminate.log event which can be hooked into for custom logging handling.
  • Allow blade templates to be configurable (advanced usage). Can swap out {{ }} for [[ ]] as an example, to avoid conflicts with other engines (such as handlebars).
  • camel_case function now returns strings with lower-case leading letters. Previous behavior of this function can be found in new studly_case helper.
  • Added find method to Eloquent Collection.
  • When using MySQL, new after method may be used when building Schema columns to specify column order. ($t->string('name')->after('foo'))
  • Added new --timeout option to queue:listen command.
  • Fixed bug that sometimes caused custom view engines to not be properly utilized.
  • Added URL::previous method for getting previous URL from referer $_SERVER variable.
  • Renamed path helper to url for consistency.
  • Added App::shutdown method for registering callbacks to be fired at very end of both web and Artisan life-cycle.
  • Added saveMany and createMany to 1:1, 1:*, and : relations.
  • Support for IronMQ message queue added. Driver is iron.
  • Added domain and path options to session configuration. Named prior path option to files.
  • Add collation and character set to create table statements in MySQL schema builder.
  • Allow session payload cookie name to be configurable.
  • shouldReceive may now be called on a Facade multiple times without using getMock.
  • Allow default value to be passed to Eloquent collection find method.
  • Intelligently parse resource routes containing slashes.
  • Route::options is now available for routing HTTP OPTIONS verb.
  • New secret method may be called from Artisan commands for password style input.
  • Added Cache::add method to store a value in the cache if the key does not exist in the cache already.
  • Added Cache::increment and Cache::decrement methods to all but file and database cache drivers.
  • Updated asset:publish command to automatically find packages with asset directories.
  • Implement Eloquent scopes.
  • Added assertResponseOk, assertViewHas, assertSessionHas, assertRedirectedTo, assertRedirectedToRoute, assertRedirectedToAction test assertions.
  • Added new setAttributeNames to Validator to allow dynamically passing custom attribute names per instance.
  • Properties passed to Eloquent fill or __construct beginning with an underscore will be ignored.
  • Changed cache stores to be implementors of a StoreInterface rather than extenders of a Store abstract class. Injected implementations into a Cache\Repository class.
  • Added array_fetch and array_flatten. Added fetch and flatten to Collection class.
  • Added merge method to the Collection class.
  • Added an addSelect method to the query builder.
  • Added Route::currentRouteName and Route::currentRouteAction.
  • Protect against mass assignment by default.
  • Make add and merge methods on the MessageBag chainable.
  • Added deleting and deleted methods to Eloquent models. Both new events.
  • Added pop and shift methods to Eloquent collection.
  • Allow Input::get to be used on JSON requests to give unified API across request types.
  • Allow sync to also update the other pivot table attributes.
  • Pass console Command instance to database seeders.
  • Made storage path configurable.
  • Added @lang and @choice Blade directives.
  • Do not run route level after filters if response is returned from before filter.
  • Added support for "mail" in addition to "smtp" in Mail.
  • Added link_to, link_to_asset, link_to_route, link_to_action helpers.
  • Routes with too many leading or trailing slashes will now 404.
  • Added callSecure test helper.
  • Added values method to the Collection class.
  • Fix transaction handling for Microsoft SQL Server.
  • Added new dump-autoload Artisan command that runs optimized for app and all workbenches.
  • Refactored post migrate:make hooks to dump autoloads for workbenches.
  • Added DB::listen(Closure) method which may be used to listen for database queries.
  • Added Model::findOrFail(id) and firstOrFail methods to Eloquent. Throws ModelNotFoundException. Can listen in your apps and return 404 repsonses if you want.
  • Added support for touches on Eloquent models. For example, adding protected $touches = ['post'] to a Comment model will update the owning post's updated_at column when the Comment is updated.
  • Session driver now automatically set to array when running Artisan tasks.
  • Added static unguard method to Eloquent to disable all mass assignment protection.
  • Added --seed option to migrate command.
  • Fix bug with replacements not being made on Lang::choice.

Beta 3

  • Fixed a few things in the ArrayStore session driver.
  • Improve reasons in Password Broker.

Beta 2

  • Migrated to ircmaxell's password-compat library for PHP 5.5 forward compatibility on hashes. No backward compatibility breaks.
  • Inflector migrated to L4. Eloquent models now assume their table names if one is not specified. New helpers str_plural and str_singular.
  • Improved Route::controller so that URL::action may be used with RESTful controllers.
  • Added model binding to routing engine via Route::model and Route::bind.
  • Added missingMethod to base Controller, can be used to handle catch-all routes into the controller.
  • Fixed bug with Redis data retrieval that caused server to hang.
  • Implemented ArrayableInterface and JsonableInterface on MessageBag.
  • Fixed bug where hasFile returned true when file returned null.
  • Changed default PDO case constant to CASE_NATURAL.
  • DB::table('foo')->truncate() now available on all supported databases.
  • Fixed Twitter Bootstrap compatibility in Paginator.
  • Allow multiple views to be passed to View::composer.
  • Added Request::segment method.
  • No need to prefix Translator methods with colons anymore.
  • Allow inline error messages for an entire rule on the Validator.
  • Can now automatically auto-load a relation for every query by setting the with attribute on models.
  • Fix fallback locale handling in Translator.
  • Added constructor arguments and merge method to MessageBag.
  • IoC container will now resolve default parameters if no binding is available.
  • Fix auto environment detection on Artisan.
  • Fix BrowserKit request processing.
  • Added Config::hasGroup method.
  • Added DB::unprepared method for running raw, unprepared queries against PDO.
  • Allow :key place-holder in MessageBag messages.
  • Added Auth::validate method for validating credentials without logging in.
  • Added Auth::stateless method for logging in for a single request without sessions or cookies.
  • Added DB::extend method for adding custom connection resolvers.
  • Added each and filter methods to Eloquent collections.
  • Swapped method order on Route::controller to make it more consistent with other similar methods.
  • Added route names to resource routes.
  • Added support for nested resources.
  • Changed resource route parameter names to match resource name, allowing for use with Route::model.
  • Added extendImplicit method to Validator.
  • Added Password::remind and Password::reset methods.
  • Implemented RemindableInterface on the default User model.
  • Added unified queue API component, with drivers for sync and beanstalkd (Amazon SQS to come).
  • Ported Model->touch method from L3 Eloquent.
  • Added isEmpty method to the Paginator.
  • Added ability to specify prefix on a route group.
  • Added setBaseUrl method to pagination environment.
  • Eloquent Model and Collections objects now include JSON_NUMERIC_CHECK by default on toJson method.
  • Eloquent mutators are now prefixed with getFooAttribute and setFooAttribute instead of getFoo and setFoo. This is to avoid conflicts with other get and set methods on the model, and in your own code.
  • Added auth:reminders Artisan command for generating a migration for the password reminders table.
  • Added App::fatal method for registering an error listener for PHP fatal errors.
  • Added session:table Artisan command for generating a migration for the session database table.
  • Fix bug when using first method on a belongsToMany relationship.
  • Added SQL and bindings array to database query exceptions.
  • Allow manipulation of session using "dot" notation.
  • Route regular expression constraints may now be defined globally via Route::pattern.
  • Auto-increment fields are now unsigned if the database system supports it.
  • Changed how database seeding works to give more freedom and allow use of Eloquent, etc.
  • Change event dispatcher to use more L3 style conventions instead of passing event objects. Added until method.
  • Fix bug with Eloquent eager loads with joins.
  • Allow method specification on class based View composers.
  • Allow method specification on class based Route filters.
  • Added new configuration option for specifying session cookie name.
  • Escape Blade echos by default. Made {{{ foo }}} echo for raw output with no escaping.
  • Allow the sending of e-mails with only plain text parts.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 99.7%
  • Shell 0.3%