Phalcon v4.0.6 Release Notes

Release Date: 2020-05-16 // almost 4 years ago
  • ๐Ÿ‘Œ Supported PHP Versions: 7.2, 7.3, 7.4

    ๐Ÿ”„ Changed

    • ๐Ÿ”„ Changed Volt::convertEncoding to no longer using iconv for a fallback since it causes issues with macOS #14912
    • ๐Ÿ”„ Changed schema manipulation in Phalcon\Db\Dialect\Mysql - unquote numerical defaults #14888, #14974
    • ๐Ÿ”„ Changed the default ACL access level from boolean FALSE to Enum::DENY #14974
    • ๐Ÿ”„ Changed the way Phalcon\Http\Response::__construct checks content data type. Now a TypeError will be thrown if incompatible data type was passed #14983
    • ๐Ÿ”„ Changed return type hints of the following Phalcon\Flash\FlashInterface's methods: error, message, notice, success and warning #14994
    • ๐Ÿ”„ Changed return type hint for Phalcon\Mvc\ModelInterface::sum #15000
    • ๐Ÿ”„ Changed return type for Phalcon\Mvc\Model\Criteria::getLimit so that integer, NULL or array will be returned #15004
    • ๐Ÿ”„ Changed return type hint for Phalcon\Mvc\Model\Manager::getCustomEventsManager to return NULL instead of boolean FALSE if there is no special events manager #15008
    • ๐Ÿ“‡ Changed Phalcon\Mvc\Model\MetaData::getDI so that now it will throw a Phalcon\Mvc\Model\Exception if there is no DiInterface instance #15011
    • ๐Ÿ”„ Changed Phalcon\Http\Request::getJsonRawBody to use json_decode instead of Phalcon\Json::decode #14936
    • ๐Ÿ”„ Changed Phalcon\Factory\AbstractFactory to expose getService which will throw an exception if it does not exist. Removed checkService and adjusted all references in newInstance() calls. #15038
    • ๐Ÿ”„ Changed the visibility of methods and properties in Phalcon\Http\Message\Response, Phalcon\Http\Message\ServerRequest and Phalcon\Http\Message\Uri to work with clone. #15040

    ๐Ÿ›  Fixed

    • ๐Ÿ›  Fixed Phalcon\Mvc\Model\Query\Builder::getPhql to add single quote between string value on a simple condition #14874
    • ๐Ÿ›  Fixed recognizing language operators inside Volt's echo mode ({{ ... }}) #14476
    • ๐Ÿ›  Fixed Tag::friendlyTitle to correctly convert titles under MacOS and Windows #14866
    • ๐Ÿ›  Fixed the Volt compiler to no longer parse cache fragments and thus searching for the viewCache service (deprecated for v4) #14907
    • ๐Ÿ›  Fixed IN operator precedence in Volt #14816
    • ๐Ÿ›  Fixed testing suite to work with PHPUnit 9 when we upgrade #14837
    • ๐Ÿ›  Fixed return type hints of the following Phalcon\Acl\AbstractAdapter's methods: getActiveAccess, getActiveRole and getActiveComponent #14974
    • ๐Ÿ›  Fixed default value of the following Phalcon\Annotations\Annotation's properties: $arguments and $exprArguments #14977
    • ๐Ÿ›  Fixed return type hints of the following Phalcon\Annotations\Annotation's methods: getArgument, getName and getNamedArgument #14977
    • ๐Ÿ›  Fixed incorrect return type hint for Phalcon\Http\Response\Cookies::setSignKey #14982
    • ๐Ÿ›  Fixed return type hints for Phalcon\Config\ConfigFactory::load and Phalcon\Config\ConfigFactory::newInstance to explicitly indicate the return type as Phalcon\Config instance #14978
    • ๐Ÿ›  Fixed return type hints for the following methods #14987:
      • Phalcon\Dispatcher\AbstractDispatcher::dispatch
      • Phalcon\Dispatcher\DispatcherInterface::dispatch
      • Phalcon\Filter::get
      • Phalcon\Http\Message\AbstractCommon::cloneInstance
      • Phalcon\Http\Message\AbstractCommon::processWith
      • Phalcon\Http\Message\AbstractMessage::withAddedHeader
      • Phalcon\Http\Message\AbstractMessage::withBody
      • Phalcon\Http\Message\AbstractMessage::withHeader
      • Phalcon\Http\Message\AbstractMessage::withProtocolVersion
      • Phalcon\Http\Message\AbstractMessage::withoutHeader
      • Phalcon\Http\Message\AbstractRequest::withMethod
      • Phalcon\Http\Message\AbstractRequest::withRequestTarget
      • Phalcon\Http\Message\AbstractRequest::withUri
      • Phalcon\Mvc\Model\Binder::findBoundModel
      • Phalcon\Validation::getEntity
      • Phalcon\Validation\ValidationInterface::getEntity
    • ๐Ÿ›  Fixed default value of Phalcon\Crypt::$key to satisfy the interface #14989
    • ๐Ÿ›  Fixed return type hint for Phalcon\Di::getInternalEventsManager #14992
    • ๐Ÿ›  Fixed return type hints of the following Phalcon\Flash\AbstractFlash's methods: error, notice, success and warning #14994
    • ๐Ÿ›  Fixed return type hint for Phalcon\Translate\InterpolatorFactory::newInstance #14996
    • ๐Ÿ›  Fixed return type hint for Phalcon\Mvc\Model::sum #15000
    • ๐Ÿ›  Fixed return type hint for Phalcon\Mvc\Model\CriteriaInterface::getLimit and Phalcon\Mvc\Model\Criteria::getLimit to follow documentation and original purpose #15004
    • ๐Ÿ›  Fixed return type hint for Phalcon\Mvc\Model::count and Phalcon\Mvc\ModelInterface::count to reflect original behavior #15006
    • ๐Ÿ›  Fixed return type hint for Phalcon\Mvc\Model::getEventsManager to reflect original behavior #15008
    • ๐Ÿ›  Fixed return type hint for Phalcon\Mvc\Model::average and Phalcon\Mvc\ModelInterface::average to reflect original behavior #15013
    • ๐Ÿ›  Fixed return type hint for Phalcon\Mvc\Model\MetaData::getColumnMap and Phalcon\Mvc\Model\MetaData::getReverseColumnMap to reflect original behavior #15015
    • ๐Ÿ›  Fixed return type hint for Phalcon\Mvc\Model\MetaDataInterface::getColumnMap and Phalcon\Mvc\Model\MetaDataInterface::getReverseColumnMap to reflect original behavior #15015
    • ๐Ÿ›  Fixed return type hint for Phalcon\Mvc\Model\CriteriaInterface::getColumns and Phalcon\Mvc\Model\Criteria::getColumns to reflect original behavior #15017
    • ๐Ÿ›  Fixed return type hint for Phalcon\Db\Column::getSize and Phalcon\Db\ColumnInterface::getSize to reflect original behavior #15019
    • ๐Ÿ›  Fixed return type hint for Phalcon\Db\Column::getAfterPosition and Phalcon\Db\ColumnInterface::getAfterPosition to reflect original behavior #15021
    • ๐Ÿ›  Fixed return type hint for Phalcon\Mvc\Model\Manager::executeQuery and Phalcon\Mvc\Model\Manager::ManagerInterface to reflect original behavior #15024
    • ๐Ÿ›  Fixed return type hint for Phalcon\Mvc\Model\Resultset::getFirst and Phalcon\Mvc\Model\ResultsetInterface::getFirst to reflect original behavior #15027
    • โช Rollback the regression changes for Phalcon\Mvc\Model\Query::_prepareSelect to properly prepare a SQL SELECT statement from a PHQL one #14657
    • ๐Ÿ›  Fixed SerializerInterface usage for Phalcon\Mvc\Model\Resultset\Complex::unserialize as well as Phalcon\Mvc\Model\Resultset\Complex::unserialize #14942

    โœ‚ Removed

    • โœ‚ Removed Phalcon\Translate\InterpolatorFactory::$mapper as well as Phalcon\Translate\InterpolatorFactory::$services in favor of Phalcon\Factory\AbstractFactory ones #15036