Yii 2.0.9 is released

Yii Framework to announce the release of  version 2.0.9. Please refer to the instructions at http://www.yiiframework.com/download/ to install or upgrade to this version.

Version 2.0.9 is a minor release of Yii 2.0 which contains about 60 minor new features and bug fixes.

There are two minor changes that may affect your existing applications so check the UPGRADE.md file.

The development progress of Yii 2 by starring or watching Yii 2.0 GitHub Project. You may also follow Yii Twitter feeds or join Yii Facebook group to connect with other Yii developers. There is also a forum thread about this news announcement.

Below we summarize some of most important features/fixes included in this release. A complete list of changes can be found in the CHANGELOG.

yii framework

Action filter

\yii\base\ActionFilter now supports wildcards for only and except options which is useful when it’s attached to the module or application:

Performance improvements

  • Message translation performance was increased for database backend by examining queries and adding proper indexes.
  • Oracle database schema was improved to be read faster.

Schema builder and migrations

Schema builder which is used in migrations got some enhancements.

First of all, there’s a new method null() to specify nullability explicitly. Also the column nullability is now set automatically in case default value is null.

Moreover, a new method was added to append custom SQL to the end of query generated:

Migrations syntax for automatic generation of code was adjusted a bit. _table and _column suffixes are now required:

Data providers and widgets

This release enhancements for grids and providers are all about labels. \yii\data\ArrayDataProvider got a $modelClass property that specifies a model which is used to provide column labels when data array is empty. Additionally \yii\grid\DataColumn, which defines base behavior for all data columns, is now trying to extract attribute label from the filterModel of the grid in case it cannot get it otherwise.


A sub-interface called CheckAccessInterface was extracted from RBAC ManagerInterface which could be useful for custom access checking implementations.

\yii\web\User::loginByCookie() was refactored in order to make it easier to override.


When listing files in an asset bundle you can set paths to null to tell asset manager not to register them at all. It is useful for registering extra scripts for development environment:


\yii\log\Target::$logVars now supports fine-grained configurations of what’s to be logged:

  • _SESSION – log global session variable. That’s the same as before.
  • _SESSION.id – log only id from session.
  • !_SESSION.secret – don’t log secret from session.

The logic for such filtering was extracted to \yii\helpers\ArrayHelper::filter() so you can use it if needed.


You can now configure default flavor for yii\helpers\Markdown calls via $defaultFlavor.



Prakash S

Prakash S

I would like to introduce myself as a Software professional opting for the career in software industry. I'm Prakash S, a MCA graduate and trained as industry level practice for Software technology. Basically I am a PHP Developer but now days exploring more in HTML5, CSS, AngularJS and jQuery libraries.