Download Yii PHP Framework 1.1.16
Yii is a component based PHP framework, with very good performance according to the developers, which makes it particularly suitable for developing large-scale web applications. The framework contains many options, such as mvc, dao/ActiveRecord, I18N/L10N, caching, jQuery-based AJAX support, scaffolding, input validation, widgets, events and theming. For more information, please refer to this page. The developers have released version 1.1.16 with the following changes and improvements:
New
- #2955: Added official support for MariaDB
Enhanced
- Public method CFileHelper::createDirectory() has been added
- Added proper handling and support of the symlinked directories in CFileHelper::removeDirectory(), added $options parameter in CFileHelper::removeDirectory()
- #89: Support for SOAP headers in WSDL generator
- #94: Web services: Implement document/literal encoding for WDSL
- #106: Added getters to CGridColumn to allow getting cell contents for extended use cases of CGridView
- #132: Added ODBC support in CDbConnection
- #182: CSort: allow arrays in asc/desc keys of virtual attributes
- #640: Introduce bigpk and bigint column types in each class extending CDbSchema
- #873: CStatRelation (CActiveRecord::STAT) now supports scopes
- #1372: CDbCommandBuilder::createMultipleInsertCommand() now throws exception if data array is empty
- #1515: Post-JOIN operations (use|force|ignore index()) support in relational queries
- #1593: Allow access to exception currently processed by CErrorHandler
- #1893: Added Schema and native connection support for the CUBRID DBMS (
- #2119: add `y` pattern to CDateTimeParser
- #2540: Enable CJSON to use JsonSerializable interface when serializing objects
- #2630: CLinkPager $nextPageLabel, $prevPageLabel, $firstPageLabel and $lastPageLabel can now be false to disable the buttons
- #2640: Enable diff on gii generated SQL files
- #2664: Added support for HTTP PATCH requests to CHttpRequest
- #2683: Application views generated by webapp command are now using HTML5 by default
- #2688: CHtml::beginForm() now supports additional HTTP methods, via a hidden `_method` field.
- #2722: CFileHelper::findFiles() accepts absolutePaths in $options and returns absolute paths if true or relative ones otherwise (defaults to true)
- #2734: Request::getPreferredLanguage() is now able to select a best matching between supported and requested languages
- #2737: CFileCache: added cachePathMode and cacheFileMode options to set modes used by chmod() for cache directory and files
- #2758: Updated phpdoc in blog demo to match current IDE supported syntax
- #2777: Allow Yii::import() and Yii::createComponent() to import classes that are loaded by other autoloaders eg composer
- #2791: requirements/index.php: added CRYPT_BLOWFISH check for CPasswordHelper
- #2799: Add HTML5 input support for color, datetime, datetime-local, week and search to CHtml and CActiveForm
- #2817: Allow specifying $colums and $refColumns arguments as array in various CDbSchema methods
- #2850: Parameter ‘id’ added for ‘ajaxUpdateError’ js function at ‘CListView’ and ‘CGridView’
- #2851: Improved Mime-Type detection by using the `mime.types` file from apache http project to dected mime types by file extension
- #2852: Refactored ShellCommand to be easier to extend
- #2908: Add insertMultiple to Migrations
- #3014: Allow changing the database used by ActiveRecord in beforeCount() like it is possible in beforeFind() already
- #3023: Added support for formatting DateTime instances to CFormatter
- #3027: Added custom encodeLabel attributes of the CMenu items
- #3048: CApcCache is now compatible with APCu
- #3049: ‘cli’ mode detection at CConsoleApplication improved
- #3061: ‘jquery.yiiGridView’ and ‘jquery.yiiListView’ allows to handle all update options via history state data
- #3068: Added CDbCommand::naturalLeftJoin() and CDbCommand::naturalRightJoin()
- #3115: Updated phpdoc for better code completion in modern IDEs
- #3147: Updated Request::getIsSecureConnection() to work with lower and uppercase config values
- #3156: It is now possible to override the models PK using primaryKey() method, even if the table defines one
- #3182: Added namespace support for controllers in subdirectories
- #3202: Adding support for the `X-HTTP-Method-Override` header in CHttpRequest
- #3211: Added support for PHPUnit 3.8+ in the bootstrap
- #3222: ‘summaryTagName’ and ’emptyCssClass’ options added to CBaseListView
- #3225: Added CForm::errorSummaryHeader and CForm::errorSummaryFooter, used like in CActiveForm::errorSummary()
- #3228: Added an ability to migrate to the certain time
- #3277: CHtml::checkBoxList and radioButtonList to take into account closeSingleTag for
- #3307: Adding attribute localeClass to CApplication
- #3314: Removed async from special attribute list enabling async=false for scripts
- #3324: Added syslog log route
- #3346: Added `fileHeader` option to MessageCommand
- #3349: Added errorCallback to CActiveForm::$clientOptions
- #3351: Allow array attribute for CFileValidator even if `maxFiles` is not > 1
- #3359: Added merge parameter to CModule::setModules
- #3391: Exception and log for not existed ClientScript package
- #3500: Framework now responds with HTTP protocol version requested
- #3513: Added ‘getExtensionByMimeType’ method to CFileHelper class
- #3533: Added Yii and YiiBase classes to composer autoloader
- #3571: Extracted rendering of data cell in CGridView.renderTableRow() to separate method for extensibility
- #3623: `itemscope` attribute is now rendered as HTML5 boolean
Changed
- #2025: Upgraded jQuery to 1.11.1
- #3042: CPasswordHelper::generateSalt() now returns salt with $2y$ cost
- #3137: Upgraded HTMLPurifier to 4.6.0
- #3298: ListView and GridView: Added check for the existence of a href attribute in link pager
- #3464: Updated multifile plugin used by CMultiFileUpload to version 1.48
- #3636: Upgraded jQuery UI to 1.11.2
- Updated the i18n data bundled with the framework to CLDR23.1 < this adds new locales and has many fixes and additional data for existing ones
Bug fixed
- #264: Fixed wrong timestamp precision value in postgres schema
- #268: Fixed Active Record count error when some field name starting from ‘count’
- #788: createIndex is not using the recommended way to create unique indexes on Postgres
- #1257: CFileValidator is no longer unsafe by default to prevent setting arbitrary values. Instead, when no file is uploaded attribute is set to null
- #1635: CDateFormatter::format() with ‘ZZZZZ’ pattern used to return timezone in RFC 822 format, now returns in ISO 8601 format as it stated in CLDR
- #2235: CPgsqlColumnSchema can’t parse default value for numeric field
- #2376: CHttpSession::regenerateID() now checks if session is started before regenerating session ID
- #2378: CActiveRecord::tableName() in namespaced model returned fully qualified class name
- #2519: CGridView and CListView fixed to be able handling special characters if history is enabled
- #2594: CLogRouter::processLogs() now ensures to clear the Logger messages so nothing is logged twice when method is called multiple times
- #2654: Allow CDbCommand to compose queries without ‘from’ clause
- #2658: CBaseListView, CGridView, CListView: added note about $itemsCssClass and $pagerCssClass properties, they must not contain empty string, null or false values
- #2969: CPgsqlSchema::addColumn() converts column type twice
- #2741: Updated CHtml to add maxlength support to all HTML5 fields
- #2753: Fixed CErrorHandler::errorAction ignored if error occurs while AJAX request
- #2756: Fixed applying condition twice during Active Record relation lazy loading
- #2770: Fixed CClientScript renders scripts with different HTML options inside same tag
- #2778: Fixed throwing unnecessary exception in CFileValidator when validating MIME types for a file upload that failed
- #2785: Use table name with schema in composeMultipleInsertCommand
- #2836: Fixed rendering when try-catching widget Exception while ‘captureOutput’ is set to true
- #2845: Fixed 1.1.14 regression affecting non-strict comparison in `CRangeValidator` validator
- #2855: Fixed issue with Component::__call() and normal properties holding a Closure
- #2862: Fixed array_merge caused renumbering of $data indexes in CHtml::radioButtonList()
- #2864: Fixed CGridView ajax calls failing CSRF validation when ajaxType is set to POST
- #2874: Fixed duplicate columns selection for HAS_MANY relation with composite primary key
- #2876: Fixed single quotes in comments column causes syntax error in model code generated by Gii(klimov-paul)
- #2884: Fixed problem with table alias in CActiveRecord that has been introduced in 1.1.14
- #2887: Fixed CFormElement is missing __isset()
- #2912: Add options parameter to CListView beforeAjaxUpdate
- #2917: Restored ability to overwrite module alias via application config which was broken in 1.1.14
- #2944: Fixed CDbCriteria fails to merge limit when it is 0
- #2945: Fixed CUrlRule escapes dot (.) symbol on parsing
- #2959: Fixed CFileValidator to encode file name, while composing error messages
- #2963: CASsetManager::generatePath no longer uses basename for hasing
- #2970: Fixed Active Record may join same relation twice on eager loading.
- #3010: Problem with callables given as values to CDetailView. CDetailView now only allows annonymous functions to be called, all other values will be taken as value
- #3064: Fixed problem with array to string converion in CDbMigration methods that accept array parameters
- #3055: CAction::runWithParams() now returns consistent result even if called without parameters
- #3087: Fixed crash on cookie validation when switching between enabling and disabling validation
- #3113: Fixed problems with realpath(false) which can occur in combination with Yii::getPathOfAlias() when alias does not exist
- #3134: Fixed the issue that query cache returns the same data for the same SQL but different query methods
- #3144: It wasn’t possible to use attributes with spaces in validation rules
- #3179: Fixed a bug with CBreadcrumbs widget and homelink that did not use activeLinkTemplate property
- #3206: Quote table names in CDbMessageSource::loadMessagesFromDb
- #3233: Gii now allows base classes with absolute namespace as well, not only relative ones
- #3242: Removed display:none on form hidden fields
- #3283: Fixed CEmailValidator to validate empty value
- #3288: Check if PHPUnit_Runner_Version exists before requiring
- #3302: CActiveForm::error() fixed to respect ‘hideErrorMessage’ option on regular render
- #3305: COciSchema column comment reading from another schema
- #3321: Clear stat cache after rotating log files so later file size check is not cached
- #3327: Gii did not generate empty directories properly
- #3406: Fixed Object of class Imagick could not be converted to string
- #3410: Fixed wrong translation parameter name in CPhpAuthManager::addItemChild()
- #3569: CConsoleCommand::copyFiles() did not replace DIRECTORY_SEPARATOR correctly
- #3582: make sure `build autoload` produces the same output on both Windows and Unix platforms
- Fixed the bug that backslashes are not escaped by CDbCommandBuilder::buildSearchCondition()
- Fixed URL parsing so it’s now properly giving 404 for URLs like “
- Fixed an issue with CFilehelper and not accessible directories which resulted in endless loop
- CSecurityManager encryption and string comparison were enhanced
Version number | 1.1.16 |
Release status | Final |
Operating systems | script language |
Website | Yii PHP Framework |
Download | |
License type | Conditions (GNU/BSD/etc.) |