- Bug #145: Fixed
IpHelper::ip2bin()
to work properly on 32-bit architectures (samdark) - Chg #134:
StringHelper::truncate()
was renamed toStringHelper::truncateCharacters()
(samdark) - Chg #134: Ability to truncate taking HTML into account was removed from
StringHelper
in favor ofHtmlPurifier
helper (samdark) - Chg #133:
FileHelper
now always uses/
as normalized directory separator regardless of operating system used (samdark) - Bug #133: Fixed
FileHelper::loadMimeTypes()
to properly work with relative paths under Windows (samdark) - Enh #133: Made
FileHelper::createDirectory()
resistent to race conditions (samdark) - Bug #12895: Use custom error action when provided, regardless of the response format (erikverheij)
- Enh #16285: Modified yii\web\XmlResponseFormatter to accept attributes for XML elements (codespede)
- Bug #16327: Fix getComposer() yii\BaseYii::createObject(null) BaseMailer (cjtterabyte)
- Bug #16065: Remove using
date.timezone
atyii\base\Application
, usedate_default_timezone_get()
instead (sashsvamir) - Bug #12539:
yii\filters\ContentNegotiator
now generates 406 'Not Acceptable' instead of 415 'Unsupported Media Type' on content-type negotiation fail (PowerGamer1) - Bug #14458: Fixed
yii\filters\VerbFilter
uses case-insensitive comparison for the HTTP method name (klimov-paul) - Enh #879: Caching implementation refactored according to PSR-16 'Simple Cache' specification (klimov-paul)
- Enh #11389:
yii\base\Event
refactored to match commonly used notations (klimov-paul) - Enh #11328: Added support for PSR-7 'HTTP Message' (klimov-paul)
- Enh #14339: Uploaded file retrieve methods have been moved from
yii\http\UploadedFile
toyii\web\Request
(klimov-paul) - Enh #4352: Result of
yii\web\Request::getBodyParams()
now includes uploaded files (klimov-paul) - Enh #14522:
yii\web\Request::getBodyParams()
now generates 415 'Unsupported Media Type' error on invalid or missing 'Content-Type' header (klimov-paul) - Enh #13799: CAPTCHA rendering logic extracted into
Yiisoft\Yii\Captcha\DriverInterface
, which instance is available viaYiisoft\Yii\Captcha\CaptchaAction::$driver
field (vladis84, klimov-paul) - Enh #9137: Added
clearErrors
parameter toyii\base\Model
validateMultiple()
method (developeruz) - Enh #9260: Mail view rendering encapsulated into
yii\mail\Template
class allowing rendering in isolation and access toyii\mail\MessageInterface
instance via$this->context->message
inside the view (klimov-paul) - Enh #11058: Add
$checkAjax
parameter to methodyii\web\Controller::redirect()
which controls redirection in AJAX and PJAX requests (ivanovyordan) - Enh #12385: Methods
addHeader()
,setHeader()
,getHeader()
,setHeaders()
have been added toyii\mail\MessageInterface
allowing setup of custom message headers (klimov-paul) - Enh #12592: Optimized
yii\filters\AccessController
on processing accessrules (dynasource) - Enh #12938: Allow to pass additional parameters to
yii\base\View::renderDynamic()
(mikehaertl) - Enh #13006: Added a
/
to theYiisoft\Yii\Captcha\Captcha::$captchaAction
string to work correctly in a module also (boehsermoe) - Enh #13702: Added support for PSR-3 'Logger' (klimov-paul)
- Enh #13706: 'Profiler' layer extracted (klimov-paul)
- Enh #15410: Added serialization abstraction layer under
yii\serialize\*
namespace (klimov-paul) - Enh #608: Added
yii\web\AssetConverter::$isOutdatedCallback
allowing custom check for outdated asset conversion result (klimov-paul) - Enh: Objects
yii\helpers\ReplaceArrayValue
,yii\helpers\UnsetArrayValue
now support restoring after being exported withvar_export()
function (silverfire) - Chg: Removed methods marked as deprecated in 2.0.x (samdark)
- Chg #8452: Packages 'captcha', 'jquery', 'rest', 'mssql' and 'oracle' have been extracted into extensions (klimov-paul)
- Chg #15383: PJAX support removed (klimov-paul)
- Chg #15383: CUBRID database support removed (klimov-paul)
- Chg #14784: Signature of
yii\web\RequestParserInterface::parse()
changed to acceptyii\web\Request
instance as a sole argument (klimov-paul) - Chg #10771: Consistent behavior of
run()
method in all framework widgets. All return the result now for better extensibility (pkirill99, cebe) - Chg #11397: Minimum required version of PHP is 7.1 now (samdark)
- Chg: Removed
yii\base\Object::className()
in favor of native PHP syntax::class
, which does not trigger autoloading (cebe) - Chg #12074: Updated
yii\widgets\ActiveField::hint()
method signature to matchlabel()
(PowerGamer1, samdark) - Chg #11560: Removed XCache and Zend data cache support as caching backends (samdark)
- Chg #7770: Updated the fallback date formats used when no
intl
extension is installed to match the defaults of the latest ICU version (cebe) - Chg #13080: Rename
yii\base\InvalidParamException
toyii\base\InvalidArgumentException
(arogachev) - Enh #2990:
yii\widgets\ActiveField::hiddenInput()
no longer renders label by default (lennartvdd) - Chg #9260: Mail message composition extracted into separated class
yii\mail\Composer
, which setup is available viayii\mail\BaseMailer::$composer
(klimov-paul) - Chg: Moved masked input field widget into separate extension https://github.com/yiisoft/yii2-maskedinput (samdark)
- Chg #12089: Behavior of
yii\grid\DataColumn::$filterInputOptions
changed when default value is overwritten (bvanleeuwen, cebe) - Chg #13885: Removed APC support in ApcCache, APCu works as before (samdark)
- Chg #14178: Removed HHVM-specific code (samdark)
- Enh #14671: use
random_int()
instead ofmt_rand()
to generate cryptographically secure pseudo-random integers (yyxx9988) - Chg #14761: Removed Yii autoloader in favor of Composer's PSR-4 implementation (samdark)
- Chg #15448: Package "ezyang/htmlpurifier" has been made optional and is not installed by default (klimov-paul)
- Chg #15481: Removed
yii\BaseYii::powered()
method (Kolyunya, samdark) - Chg #15811: Fixed issue with additional parameters on
yii\base\View::renderDynamic()
while parameters contains single quote introduced in #12938 (xicond) - Enh #16054: Callback execution with mutex synchronization (zhuravljov)
- Enh #16126: Allows to configure
Connection::dsn
by config array (leandrogehlen) - Chg #11397:
yii\i18n\MessageFormatter
polyfills andyii\i18n\MessageFormatter::parse()
method were removed resulting in performance boost. See UPGRADE for compatibility notes (samdark) - Chg #16247: Cloning components will now clone their behaviors as well (brandonkelly)
- Enh #16487: Added circular reference detection in DI container (hiqsol)
- Enh #16495: Added method call support in DI and
Yii::configure()
(hiqsol) - Enh #95: Added ability to get all translation category messages with
yii\i18n\MessageSource::getMessages()
(miolae)