All Versions
100
Latest Version
Avg Release Cycle
58 days
Latest Release
1536 days ago
Changelog History
Page 1
Changelog History
Page 1
-
v4.1.0 Changes
October 31, 2020👌 Supported PHP Versions: 7.2, 7.3, 7.4
➕ Added
- ➕ Added JWT (JSON Web Tokens) support under
Phalcon\Security\JWT
. Offers support for:- Token
- Parser
- Builder
- Validator
- Signers (None, HMAC)
- Base64 encode/decodeUrl helper class
#13856
- ➕ Added additional HTML helpers under
Phalcon\Html\Helper
:Anchor
,Base
,Body
,Button
,Close
,Element
,Form
,Img
,Input\Color
,Input\Date
,Input\DateTime
,Input\DateTimeLocal
,Input\Email
,Input\File
,Input\Hidden
,Input\Image
,Input\Input
,Input\Month
,Input\Numeric
,Input\Password
,Input\Range
,Input\Select
,Input\Search
,Input\Submit
,Input\Tel
,Input\Text
,Input\Textarea
,Input\Time
,Input\Url
,Input\Week
,Label
,Link
,Meta
,Ol
,Script
,Style
,Title
,Ul
#14696 - ➕ Added
Phalcon\Http\Request::getPreferredIsoLocaleVariant()
to return the base language if this is a specific one (en
vsen-US
) #3135 - ➕ Added
preload
for Volt, which will send a HTTP/2 preload header #13128 - ➕ Added
Phalcon\Helper\Arr::blackList()
to exclude elements of an array by the keys obtained from the elements of a blacklist #14801 @TimurFlush - ➕ Added
Phalcon\Debug::renderHtml()
to get a HTML representation of the exception #14794 @TimurFlush - ➕ Added
Phalcon\Mvc\Router\Annotations->setActionPreformatCallback($callback)
to set a callback which pre-formats actions to custom pattern #14819 - ➕ Added new PDO wrapper for the Data Mapper implementation, with decorated instance, locator and profiler
Phalcon\DataMapper\Pdo\Connection
Phalcon\DataMapper\Pdo\Connection\Decorated
Phalcon\DataMapper\Pdo\Profiler\Profiler
Phalcon\DataMapper\Pdo\Profiler\MemoryLogger
Phalcon\DataMapper\Pdo\ConnectionLocator
This component will be used in the Data Mapper implementation but can be used as a stand alone component for PDO connections. #14733
- ➕ Added new Query Builder, as well as a factory, for the Data Mapper implementation supporting CRUD with bound parameters
Phalcon\DataMapper\Query\Bind
Phalcon\DataMapper\Query\Delete
Phalcon\DataMapper\Query\Insert
Phalcon\DataMapper\Query\Select
Phalcon\DataMapper\Query\Update
Phalcon\DataMapper\Query\QueryFactory
🏗 This component can be used to create SQL statements using a fluent interface. Optionally the statements can be executed from the builder itself using theDataMapper\Pdo
connection. #14734
- ➕ Added
Phalcon\Mvc\Micro\LazyLoader::getHandler()
to return real handler when using lazy loaded controllers forPhalcon\Mvc\Micro
#14871 @Jurigag - ➕ Added
Phalcon\Collection\CollectionInterface
andPhalcon\Config\ConfigInterface
to use as typehints when extending or implementing custom classes #15106 @BeMySlaveDarlin - ➕ Added
Phalcon\Db\Adapter\AdapterInterface::getDefaultValue()
andsupportsDefaultValue()
methods to properly support theDEFAULT
keyword #15180 - ➕ Added
Phalcon\Db\Adapter\AbstractAdapter::supportsDefaultValue()
method to properly support theDEFAULT
keyword #15180
🔄 Changed
- ➕ Added service checks for the session. Now cookies will be saved in the session only when the
session
service is defined #11770, #14649 - 🔄 Changed
Phalcon\Db\Adapter\*::getRawSQLStatement()
to return the full SQL query with parameters #12196 - 👉 Changed
Phalcon\Filter::sanitize
to throw aE_USER_NOTICE
when a filter does not exist. #14679 - 🖨 PHQL now supports the use of any printable characters from the extended ASCII table for escaped identifiers. The exception characters are
[
and]
. To use[
and]
escape they (\[
,\]
) #14535 - ✂ Removed UTF-8 charset when using
Phalcon\Http\Response::setJsonContent
to apply with rfc7159 - 🔄 Changed the visibility of properties in
Phalcon\Http\Message\Uri
to work withclone
. #15040 - 🔄 Change
Phalcon\Validation\AbstractValidator::__construct
. Save custom validator message in options. #15053 @ivan-zolotavin - ➕ Add proxy methods without
_
prefix in methods names:getRelatedRecords()
,groupResult()
,exists()
,preSaveRelatedRecords()
,preSave()
,doLowUpdate()
,postSaveRelatedRecords()
,postSave()
,cancelOperation()
,doLowInsert()
,getConnection()
,getConnectionService()
,getVersion()
,getSpecial()
#14971 - Modified
Phalcon\Mvc\Model\Relation
to accept callable params for model relations. #15158
🛠 Fixed
- 🛠 Fixed
Phalcon\Db\Dialect\Mysql::getColumnDefinition
to recognizesize
forDATETIME
,TIME
andTIMESTAMP
columns #13297 - 🛠 Fixed
Phalcon\Events\Manager
to provide callable support #13322, #15045 - 🛠 Fixed
Phalcon\Validation\Validator\Uniqueness
fixed except query #15084 - 🛠 Fixed
Phalcon\Mvc\Model
to also check the params option in cascade relations when deleting #15098 - 🛠 Fixed
Phalcon\Mvc\Model
to also check the params option in restricted relations when deleting #15172 - 🛠 Fixed
Phalcon\Mvc\Model::findFirst()
to return correct value #15077 - 🛠 Fixed
Phalcon\Mvc\Model\CriteriaInterface::where()
parameters #15144 - 🛠 Fixed
Phalcon\Http\Response\Cookies::set()
to utilize the options parameter correctly #15129 - 🛠 Fixed
Phalcon\Http\Cookie::send()
to defineoptions
parameter #15142 - 🛠 Fixed
Phalcon\Crypt
performance issues. #15118 - 🛠 Fixed
Phalcon\Mvc\Router\Route
unicode support in patterns #15102 - Fixed fatal error in
Phalcon\Mvc\Model::cloneResultMap()
when column map is used withorm.cast_on_hydrate
turned on. #14617 - 🛠 Fixed
Phalcon\Mvc\Model::sum()
,average()
,minimum()
,maxmium()
,count()
to utilize the transaction parameter. #15113 - 🛠 Fixed
Phalcon\Mvc\Model::__set()
to cleardirtyRelated
when empty array is set. #14822 - 🛠 Fixed
Phalcon\Mvc\Model
to skip columns with default values when theDEFAULT
keyword is not supported by the database adapter (SQLite) #15180 - 🛠 Fixed
Phalcon\Mvc\Router
to handle numeric routes properly #14926 - 🛠 Fixed
Phalcon\Session\Adapter\Redis
andPhalcon\Session\Adapter\Libmemcached
to utilize the prefix option #15184 - 🛠 Fixed
Phalcon\Mvc\Model
to save the modified properties of previously queried single related records. #15148
✂ Removed
- ➕ Added JWT (JSON Web Tokens) support under
-
v4.0.6 Changes
May 16, 2020👌 Supported PHP Versions: 7.2, 7.3, 7.4
🔄 Changed
- 🔄 Changed
Volt::convertEncoding
to no longer usingiconv
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
toEnum::DENY
#14974 - 🔄 Changed the way
Phalcon\Http\Response::__construct
checkscontent
data type. Now aTypeError
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
andwarning
#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 aPhalcon\Mvc\Model\Exception
if there is noDiInterface
instance #15011 - 🔄 Changed
Phalcon\Http\Request::getJsonRawBody
to usejson_decode
instead ofPhalcon\Json::decode
#14936 - 🔄 Changed
Phalcon\Factory\AbstractFactory
to exposegetService
which will throw an exception if it does not exist. RemovedcheckService
and adjusted all references innewInstance()
calls. #15038 - 🔄 Changed the visibility of methods and properties in
Phalcon\Http\Message\Response
,Phalcon\Http\Message\ServerRequest
andPhalcon\Http\Message\Uri
to work withclone
. #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 theviewCache
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
andgetActiveComponent
#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
andgetNamedArgument
#14977 - 🛠 Fixed incorrect return type hint for
Phalcon\Http\Response\Cookies::setSignKey
#14982 - 🛠 Fixed return type hints for
Phalcon\Config\ConfigFactory::load
andPhalcon\Config\ConfigFactory::newInstance
to explicitly indicate the return type asPhalcon\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
andwarning
#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
andPhalcon\Mvc\Model\Criteria::getLimit
to follow documentation and original purpose #15004 - 🛠 Fixed return type hint for
Phalcon\Mvc\Model::count
andPhalcon\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
andPhalcon\Mvc\ModelInterface::average
to reflect original behavior #15013 - 🛠 Fixed return type hint for
Phalcon\Mvc\Model\MetaData::getColumnMap
andPhalcon\Mvc\Model\MetaData::getReverseColumnMap
to reflect original behavior #15015 - 🛠 Fixed return type hint for
Phalcon\Mvc\Model\MetaDataInterface::getColumnMap
andPhalcon\Mvc\Model\MetaDataInterface::getReverseColumnMap
to reflect original behavior #15015 - 🛠 Fixed return type hint for
Phalcon\Mvc\Model\CriteriaInterface::getColumns
andPhalcon\Mvc\Model\Criteria::getColumns
to reflect original behavior #15017 - 🛠 Fixed return type hint for
Phalcon\Db\Column::getSize
andPhalcon\Db\ColumnInterface::getSize
to reflect original behavior #15019 - 🛠 Fixed return type hint for
Phalcon\Db\Column::getAfterPosition
andPhalcon\Db\ColumnInterface::getAfterPosition
to reflect original behavior #15021 - 🛠 Fixed return type hint for
Phalcon\Mvc\Model\Manager::executeQuery
andPhalcon\Mvc\Model\Manager::ManagerInterface
to reflect original behavior #15024 - 🛠 Fixed return type hint for
Phalcon\Mvc\Model\Resultset::getFirst
andPhalcon\Mvc\Model\ResultsetInterface::getFirst
to reflect original behavior #15027 - ⏪ Rollback the regression changes for
Phalcon\Mvc\Model\Query::_prepareSelect
to properly prepare a SQLSELECT
statement from a PHQL one #14657 - 🛠 Fixed
SerializerInterface
usage forPhalcon\Mvc\Model\Resultset\Complex::unserialize
as well asPhalcon\Mvc\Model\Resultset\Complex::unserialize
#14942
✂ Removed
- ✂ Removed
Phalcon\Translate\InterpolatorFactory::$mapper
as well asPhalcon\Translate\InterpolatorFactory::$services
in favor ofPhalcon\Factory\AbstractFactory
ones #15036
- 🔄 Changed
-
v4.0.5 Changes
March 07, 2020👌 Supported PHP Versions: 7.2, 7.3, 7.4
➕ Added
🔄 Changed
🛠 Fixed
- 🛠 Fixed
Phalcon\Db::fetchAll
to correctly return data whenEnum::FETCH_COLUMN
is supplied. #13321 - 🛠 Fixed Postgres NULL values to not be required during model update. #14862
- 🛠 Fixed MySQL alter column when default value contains not only CURRENT_TIMESTAMP #14880
- 🛠 Fixed MySQL default value with ON UPDATE expression #14887
- 🛠 Fixed
Str::dirFromFile()
to replace.
with-
to avoid issues with Windows environments #14858
- 🛠 Fixed
-
v4.0.4 Changes
February 15, 2020👌 Supported PHP Versions: 7.2, 7.3, 7.4
➕ Added
- ➕ Added a way to utilize GitHub actions to run database tests against each RDBMS and reworked the testing suite. #14779
- ➕ Added the latest version of Codeception (v4) and utilized the phalcon4 module. #14779
🔄 Changed
- 🔄 Changed Column 'notNull' definition to make possible create nullable (NULL) columns #14804
🛠 Fixed
- 🛠 Fixed
Phalcon\Db\Adapter\Pdo\Postgresql
to correctly identifybool
fields instead of treating them astinyint
#14722 @tidytrax - 🛠 Fixed
Phalcon\Cli\Console
to pass current container to thePhalcon\Mvc\ModuleDefinitionInterface::registerAutoloaders()
#14787 @TimurFlush - 🛠 Fixed
Phalcon\Db\Dialect\Mysql::createTable()
to create default value with CURRENT_TIMESTAMP ON UPDATE/DELETE [#14797] - 🛠 Fixed
Phalcon\Storage\Adapter\*
to no longer accept theserializer
option as it was clashing with the factory #14828 - 🛠 Fixed
Phalcon\Http\Request
to return the correct host on anUnexpectedValueException
#14763 - 🛠 Fixed
Phalcon\Assets\Collection
to initializeposition
to 0 #14848
-
v4.0.3 Changes
January 25, 2020👌 Supported PHP Versions: 7.2, 7.3, 7.4
🛠 Fixed
- 🛠 Fixed
Phalcon\Db\Adapter\Pdo\Mysql
Tinyint(1) is handled as boolean under MySql #14708 - 🛠 Fixed
Phalcon\Mvc\View\Engine\Volt
to produce the correct order of variables for thejoin
filter #14771 - 🛠 Fixed
Phalcon\Storage\Adapter\Stream::getKeys()
bug in the absence of a directory with a prefix name #14725, #14721 - 🛠 Fixed
Phalcon\Debug::onUncaughtException
Should accept\Throwable
instead of\Exception
as an argument #14738 - 🛠 Fixed
Phalcon\Validation\ValidatorFactory
Should return Phalcon\Validation\ValidatorInterface 14749 - 🛠 Fixed
Phalcon\Mvc\Model\Binder
to now correctly callhas
andset
on the cache object #14743 - 🛠 Fixed
Phalcon\Session\Adapter\Stream
andPhalcon\Storage\Adapter\Stream
to correctly handle simultaneous read/write #14694 - 🛠 Fixed
Phalcon\Config\ConfigFactory
to always add the correct extension #14756
- 🛠 Fixed
-
v4.0.2 Changes
January 11, 2020👌 Supported PHP Versions: 7.2, 7.3, 7.4
🛠 Fixed
- 🛠 Fixed Phalcon version number incorrectly set in the previous release
-
v4.0.1 Changes
January 11, 2020👌 Supported PHP Versions: 7.2, 7.3, 7.4
🔄 Changed
- 🔄 Changed the logic when logging times for
Phalcon\Logger
to useDateTimeImmutable
so as to handle microseconds if necessary. #2893 - 🔄 Changed
Phalcon\Http\Cookie::send
andPhalcon\Http\Cookie::delete
to allow forsamesite
to be passed in theoptions
when using PHP > 7.3 #14627
🛠 Fixed
- 🛠 Fixed
Phalcon\Mvc\Model\Criteria
Di isn't set when usingCriteria::fromInput()
#14538 - 🛠 Fixed
Phalcon\Db\Dialect\Mysql
removing unnecessary parentheses fordouble
andfloat
#14645 @pfz - 🛠 Fixed
Phalcon\Http\Cookie::delete
to parse the correct parameters - cannot use alternative syntax until PHP 7.3 #14643 - 🛠 Fixed
Phalcon\Mvc\Model::__isset
to take into account non visible properties by checking the getter if it exists #13518 #13900 - 🛠 Fixed
Phalcon\Mvc\Model::__set
to return a more informative message if we are tying to access a non visible property #13518 #13900 - 🛠 Fixed
Phalcon\Mvc\Model\Resultset\Simple::toArray
to correctly process virtual fields #14669 - 🛠 Fixed
Phalcon\Session\Manager::getUniqueKey
to prefix the key only ifuniqueId
is present #14688 - 🛠 Fixed
Phalcon\Db\Adapter\Pdo::describeColumns
to correctly detect ENUM columns #14691
- 🔄 Changed the logic when logging times for
-
v4.0.0 Changes
July 14, 2019➕ Added
- ➕ Added
Phalcon\Factory\Exception
for factory exceptions. #13672 - ➕ Added
Phalcon\Filter\FilterInterface
for custom filter implementations. #13672 - ➕ Added
Phalcon\Db\Adapter\PdoFactory
: Factory to create PDO adapters. #13672 - ➕ Added
Phalcon\Image\ImageFactory
: Factory to create image adapters. #13672 - ➕ Added
Phalcon\Logger\LoggerFactory
: Factory to create logger objects. #13672 - ➕ Added
Phalcon\Translate\InterpolatorFactory
: Factory to create interpolator objects. #13672 - ➕ Added
Phalcon\Translate\TranslateFactory
: Factory to create translate objects. #13672 - ➕ Added
Phalcon\Domain\Payload
to help in transferring messages between layers of the application. #14123 - ➕ Added
Phalcon\Domain\PayloadFactory
: Factory to create payload objects. #14123 - ➕ Added
Phalcon\Http\Message\ServerRequestFactory::load
: Method to create aServerRequest
object from globals. #14154 - ➕ Added
saslAuthData
as option toPhalcon\Storage\Adapter\Libmemcached
to authenticate using SASL #13394 - ➕ Added
Phalcon\Collection\ReadOnly
: Read only collection. #14154 - ➕ Added
whiteList()
toPhalcon\Helper\Arr
#13954 - ➕ Added
Phalcon\Config\ConfigFactory::newInstance()
: Factory to create config objects. #13201, #13768 - ➕ Added
Phalcon\Db\Enum
#14213 - ➕ Added
Phalcon\Dispatcher\Exception
#14213
🔄 Changed
- 📇 Renamed
Phalcon\Annotations\Adapter\Files
toPhalcon\Annotations\Adapter\Stream
. #13672 - 📇 Renamed
Phalcon\Annotations\Adapter
toPhalcon\Annotations\Adapter\AbstractAdapter
. #13672 - 📇 Renamed
Phalcon\Annotations\AdapterInterface
toPhalcon\Annotations\Adapter\AdapterInterface
. #13672 - 📇 Renamed
Phalcon\Annotations\Factory
toPhalcon\Annotations\AnnotationsFactory
. #13672 - 📇 Renamed
Phalcon\Config\Factory
toPhalcon\Config\ConfigFactory
. #13672 - 📇 Renamed
Phalcon\Filter\FilterLocator
toPhalcon\Filter
. #13672 - 📇 Renamed
Phalcon\Filter\FilterLocatorFactory
toPhalcon\Filter\FilterFactory
. #13672 - 📇 Renamed
Phalcon\Image\Adapter
toPhalcon\Image\Adapter\AbstractAdapter
. #13672 - 📇 Renamed
Phalcon\Image\AdapterInterface
toPhalcon\Image\Adapter\AdapterInterface
. #13672 - 📇 Renamed
Phalcon\Paginator\Adapter
toPhalcon\Paginator\Adapter\AbstractAdapter
. #13672 - 📇 Renamed
Phalcon\Paginator\AdapterInterface
toPhalcon\Paginator\Adapter\AdapterInterface
. #13672 - 📇 Renamed
Phalcon\Paginator\Factory
toPhalcon\Paginator\PaginatorFactory
. #13672 - 📇 Renamed
Phalcon\Translate\Adapter
toPhalcon\Translate\Adapter\AbstractAdapter
. #13672 - 📇 Renamed
Phalcon\Translate\AdapterInterface
toPhalcon\Translate\Adapter\AdapterInterface
. #13672 - 🔌
Phalcon\Plugin
is now abstract. - 🚚 Moved
method
parameter inPhalcon\Mvc\Model\Manager::getRelationRecords()
to the last position. #14115 - 🚚 Moved
method
parameter inPhalcon\Mvc\Model\Manager::getBelongsToRecords()
to the last position. #14115 - 🚚 Moved
method
parameter inPhalcon\Mvc\Model\Manager::getHasOneRecords()
to the last position. #14115 - 🚚 Moved
method
parameter inPhalcon\Mvc\Model\Manager::getHasManyRecords()
to the last position. #14115 - 🚚 Validator messages were moved into each validator. #13208
Phalcon\Paginator\Repository::getProperty()
now usesPhalcon\Helper\Arr::get()
.- 🔨 Refactored
Phalcon\Collection
to allow conditional key case sensitivity. #14154 - 🔨 Refactored
Phalcon\Registry
to align with thePhalcon\Collection
interface. #14154 - 0️⃣
Phalcon\Mvc\Micro::setModelBinder()
now uses the Factory Default DI if none is set. #14171 - 👕
Phalcon\Mvc\Model\ValidationFailed
now works withModelInterface
. - 🔨 Refactored
Phalcon\Config
to extendPhalcon\Collection
#13201, #13768 - 📇 Renamed
Phalcon\Config
to extendPhalcon\Config\Config
#13201, #13768 - 📇 Renamed
Phalcon\Acl
toPhalcon\Acl\Enum
#14213 - 📇 Renamed
Phalcon\Acl\Adapter
toPhalcon\Acl\Adapter\AbstractAdapter
#14213 - 📇 Renamed
Phalcon\Acl\AdapterInterface
toPhalcon\Acl\Adapter\AdapterInterface
#14213 - 📇 Renamed
Phalcon\Application
toPhalcon\Application\AbstractApplication
#14213 - 📇 Renamed
Phalcon\CryptInterface
toPhalcon\Crypt\CryptInterface
#14213 - 📇 Renamed
Phalcon\Db\Adapter
toPhalcon\Db\Adapter\AbstractAdapter
#14213 - 📇 Renamed
Phalcon\Db\AdapterInterface
toPhalcon\Db\Adapter\AdapterInterface
#14213 - 📇 Renamed
Phalcon\Db
toPhalcon\Db\AdapterDb
#14213 - 📇 Renamed
Phalcon\Db\Adapter\Pdo
toPhalcon\Db\Adapter\Pdo\AbstractPdo
#14213 - 📇 Renamed
Phalcon\Dispatcher
toPhalcon\Dispatcher\AbstractDispatcher
#14213 - 📇 Renamed
Phalcon\DispatcherInterface
toPhalcon\Dispatcher\DispatcherInterface
#14213 - 📇 Renamed
Phalcon\EscaperInterface
toPhalcon\Escaper\EscaperInterface
#14213 - 📇 Renamed
Phalcon\Firewall\Adapter
toPhalcon\Firewall\Adapter\AbstractAdapter
#14213 - 📇 Renamed
Phalcon\Firewall\AdapterInterface
toPhalcon\Firewall\Adapter\AdapterInterface
#14213 - 📇 Renamed
Phalcon\Flash
toPhalcon\Flash\AbstractFlash
#14213 - 📇 Renamed
Phalcon\FlashInterface
toPhalcon\Flash\FlashInterface
#14213 - 📇 Renamed
Phalcon\Forms\Element
toPhalcon\Forms\Element\AbstractElement
#14213 - 📇 Renamed
Phalcon\Forms\ElementInterface
toPhalcon\Forms\Element\ElementInterface
#14213 - 📇 Renamed
Phalcon\Image
toPhalcon\Image\Enum
#14213 - 📇 Renamed
Phalcon\Mvc\View\Engine
toPhalcon\Mvc\View\Engine\AbstractEngine
#14213 - 📇 Renamed
Phalcon\Mvc\View\EngineInterface
toPhalcon\Mvc\View\Engine\EngineInterface
#14213 - 👕 Renamed
Phalcon\UrlInterface
toPhalcon\Url\UrlInterface
- 📇 Renamed
Phalcon\Validator
toPhalcon\Validator\Validator
#14213 - 📇 Renamed
Phalcon\Validator\Validator
toPhalcon\Validator\AbstractValidator
#14213 - 📇 Renamed
Phalcon\Validator\ValidatorComposite
toPhalcon\Validator\AbstractValidatorComposite
#14213 - 📇 Renamed
Phalcon\Validator\CombinedFieldsValidator
toPhalcon\Validator\AbstractCombinedFields
#14213 - 📇 Renamed
Phalcon\Validator\Validator\File\FileAbstract
toPhalcon\Validator\Validator\File\AbstractFile
#14213
🛠 Fixed
- Fixed
Phalcon\Mvc\View::getRender()
to callview->finish()
instead ofob_end_clean()
. #14095 - 🛠 Fixed
Phalcon\Cache\Adapter\Libmemcached
failing to set values whenPhalcon\Mvc\Model\MetaData\Libmemcached
was in use. #14100 - 🛠 Fixed
Phalcon\Db\Column
to recognizetinyint
,smallint
,mediumint
,integer
as valid autoIncrement columns. #14102 - 🛠 Fixed
method
parameter inPhalcon\Mvc\Model\Manager::getRelationRecords()
, it's not always a string, null by default. #14115 - 🛠 Fixed
method
parameter inPhalcon\Mvc\Model\Manager::getBelongsToRecords()
, it's not always a string, null by default. #14115 - 🛠 Fixed
method
parameter inPhalcon\Mvc\Model\Manager::getHasOneRecords()
, it's not always a string, null by default. #14115 - 🛠 Fixed
method
parameter inPhalcon\Mvc\Model\Manager::getHasManyRecords()
, it's not always a string, null by default. #14115 - 🛠 Fixed
handlers
property inPhalcon\Mvc\Micro\Collection
to now always an array. - 🛠 Fixed crash in
Phalcon\Mvc\Model::save()
when saving a circular model relation. #13354 - 🛠 Fixed
Phalcon\Db\Dialect\Postgresql::truncateTable()
to now escape table names. #14125 - Fixed
Phalcon\Mvc\Model\MetaData::write()
to throw an exception iform.exception_on_failed_metadata_save
is set to true. #13433 - 🛠 Fixed
Phalcon\Image\Adapter\Gd
to throw an error withimagecolorat
. #14139 Phalcon\Mvc\Model\Criteria::limit()
now corrects negative offsets.- 0️⃣
Phalcon\Di\FactoryDefault\Cli
can now use the new Filter system. - 🛠 Fixed
Phalcon\Mvc\Router
now parses and uses path. #14087 - 🛠 Fixed various areas in
Phalcon\Acl\Adapter
andPhalcon\Acl\Adapter\Memory
including comments, logic,denyComponentAccess
andAdapterInterface
. Added tests. #13870 - 🛠 Fixed
Phalcon\Config::merge()
not merging numeric values properly #13201, #13768 - 🛠 Fixed
Phalcon\Validation\Validator\File\AbstractFile
missing the resolution of thevalue
property #14198 - 🛠 Fixed
Phalcon\Storage\Adapter\Stream
#14190 Phalcon\Form\Form::clear()
now correctly clears single fields. #14217- 🛠 Fixed
Phalcon\Form\Form::getValue()
not to callgetAttributes()
when an element is named "attributes" #14226 - 🛠 Fixed
Phalcon\Model::delete()
array to string conversion #14080 - 🛠 Fixed segfault in
Phalcon\Mvc\Micro\LazyLoader::callMethod()
when handler contains syntax error.
✂ Removed
- ✂ Removed
Phalcon\Session\Factory
. #13672 - ✂ Removed
Phalcon\Factory
andPhalcon\FactoryInterface
. #13672 - ✂ Removed
Phalcon\Translate
. #13672 - ✂ Removed
Phalcon\Db\Column::getSchemaName()
as its not relevant or settable. - Removed
Phalcon\Config::__set_state()
as it does not serve any purpose and skipped the constructor. #13201, #13768 - Removed
Phalcon\Annotations\Reflection::__set_state()
,Phalcon\Db\ColumnInterface::__set_state()
,Phalcon\Db\Column::__set_state()
,Phalcon\Db\IndexInterface::__set_state()
,Phalcon\Db\Index::__set_state()
,Phalcon\Db\ReferenceInterface::__set_state()
,Phalcon\Db\Reference::__set_state()
,Phalcon\Di\ServiceInterface::__set_state()
,Phalcon\Di\Service::__set_state()
,Phalcon\Http\Response\HeadersInterface::__set_state()
,Phalcon\Http\Response\Headers::__set_state()
,Phalcon\Http\Request::__set_state()
,Phalcon\Messages\Message::__set_state()
#14212
- ➕ Added
-
v4.0.0-rc.3 Changes
November 16, 2019➕ Added
- ➕ Added support for PSR-13 links and evolvable links #14507
- Added
Phalcon\Html\Link\Link
- Added
Phalcon\Html\Link\LinkProvider
- Added
Phalcon\Html\Link\EvolvableLink
- Added
Phalcon\Html\Link\EvolvableLinkProvider
- Added
Phalcon\Html\Link\Serializer\Header
- Added
Phalcon\Html\Link\Serializer\SerializerInterface
- Added
- ➕ Added
Phalcon\Collection:getKeys
andPhalcon\Collection\getValues
for getting data from the collection #14507 - ➕ Added has-one-through relations to
Phalcon\Mvc\Model
andPhalcon\Mvc\Model\Manager
#14511 - ➕ Added
Phalcon\Mvc\Model::hasOneThrough()
- ➕ Added
Phalcon\Mvc\Model\Manager::addHasOneThrough()
- ➕ Added
Phalcon\Mvc\Model\Manager::existsHasOneThrough()
- ➕ Added
Phalcon\Mvc\Model\Manager::getHasOneThrough()
- ➕ Added
Phalcon\Mvc\Model\ManagerInterface::addHasOneThrough()
- ➕ Added
Phalcon\Mvc\Model\ManagerInterface::existsHasOneThrough()
- ➕ Added
Phalcon\Mvc\Model\ManagerInterface::getHasOneThrough()
- ➕ Added
Phalcon\Http\Request::numFiles
to return the number of files in the request #14519
🔄 Changed
- 🔄 Changed
Phalcon\Paginator\Adapter\Model
- Removed the
data
parameter - Added
model
parameter to pass model class - Added optional parameter
parameters
which is used as the parameterModel::find()
- Removed the
🛠 Fixed
- 🛠 Fixed
Phalcon\Annotations\AnnotationsFactory:newInstance
to return the correct object back #14494 - 🛠 Fixed return types:
Phalcon\Db\Adapter\PdoFactory::load()
now returnsPhalcon\Db\Adapter\AdapterInterface
Phalcon\Db\Adapter\PdoFactory::newInstance()
now returnsPhalcon\Db\Adapter\AdapterInterface
Phalcon\Logger\LoggerFactory::load()
now returnsPhalcon\Logger
Phalcon\Validation\ValidatorFactory::newInstance
now returnsPhalcon\Factory\ValidatorInterface
- 🛠 Fixed
Phalcon\Container:get
to usegetShared
transparently #14502 - 🛠 Fixed
Phalcon\Mvc\Model
to include correct model instances in messages metadata #14510 - 🛠 Fixed
Phalcon\Di\Injectable::__get()
to return shared instance by default #14491 - 🛠 Fixed
Phalcon\Mvc\View::loadTemplateEngines()
to not share engine with other views by default #14491 - 🛠 Fixed
Phalcon\Mvc\Model\Manager::getRelations()
andgetRelationsBetween()
to return many-to-many relations correctly #14509 - 🛠 Fixed
Phalcon\Logger
to correctly allow transactional logging #14514 - 🛠 Fixed
Phalcon\Annotations\Adapter\Stream::read
andPhalcon\Annotations\Adapter\Stream::write
to useserialize
/unserialize
vs.var_export
#14515 - 🛠 Fixed
Phalcon\Http\Request::hasFiles
to return boolean andtrue
if files are present #14519 - 🛠 Fixed
Phalcon\Logger\Adapter\Syslog
to correctly log Syslog messages #14522 - 🛠 Fixed
Phalcon\Mvc\Model\MetaDataInterface::getIdentityField
andPhalcon\Mvc\Model\MetaData::getIdentityField
to also returnnull
if the identity field is not present #14523 - 🛠 Fixed
Phalcon\Storage\Serializer\Json
to serialize objects that implement theJsonSerializable
interface #14528 - 🛠 Fixed
Phalcon\Collection
to correctly return one level nested objects that implementJsonSerializable
#14528 - 🛠 Fixed
Phalcon\Mvc\View
to only include first found instance of view when using multiple view directories #12977
✂ Removed
- ✂ Removed
Phalcon\Logger\Formatter\Syslog
- really did not do much #14523
- ➕ Added support for PSR-13 links and evolvable links #14507
-
v4.0.0-rc.2 Changes
October 26, 2019➕ Added
- ➕ Added
cast
parameter toPhalcon\Collection::get
andPhalcon\Helper\Arr::get
allowing developers to cast the result returned to the type they want to. #14465 - ➕ Added
Phalcon\Paginator\Repository::jsonSerialize()
implementingJsonSerializable
#14475 - ➕ Added
Phalcon\Logger::getLogLevel()
andPhalcon\Logger::setLogLevel()
setting the minimum log level for the logger #14480
🔄 Changed
- Changed all calls to
new <object>
to use thecreate_instance
orcreate_instance_params
for better performance. #14419 - ⚡️ Changed the exception text for
Phalcon\Mvc\Model::getChangedFields
andPhalcon\Mvc\Model::getUpdatedFields
when there is no snapshot setup #14468 - 🔄 Changed
Phalcon\Mvc\Model::__callStatic()
to throw an exception if the called method is unknown. #14467 - 🔄 Changed
Phalcon\Mvc\Model
to accept0
,null
and""
as valid parameter forfindByField()
,findFirstByField()
andcountByField()
. #14467
🛠 Fixed
- 🛠 Fixed
Phalcon\Mvc\View\Engine\Volt\Compiler::parse()
Corrected syntax recognize for "set" keyword. #14288 - 🛠 Fixed
Phalcon\Mvc\View\Engine\Volt\Compiler::parse()
Corrected syntax recognize for "is" keyword. #11683 - 🛠 Fixed
Phalcon\Cache\Adapter\AbstractAdapter
useAdapterInterface
instead of non existingAbstractAdapter
#14414 - 🛠 Fixed
Phalcon\Cache\CacheFactory
usePsr\SimpleCache\CacheInterface
instead of non existingPhalcon\Cache\CacheInterface
#14414 - 🛠 Fixed
Phalcon\Cache\CacheFactory
usePsr\SimpleCache\CacheInterface
instead of non existingPhalcon\Cache\CacheInterface
#14414 - 🛠 Fixed
Phalcon\Cli\Router
add missingPhalcon\Cli\Router\RouteInterface
#14414 - 🛠 Fixed
Phalcon\Dispatcher\AbstractDispatcher::setModelBinder()
to return DispatcherInterface instead of non existing Dispatcher: #14414 Phalcon\Firewall\Adapter\Acl
Phalcon\Firewall\Adapter\Annotations
- 🛠 Fixed
Phalcon\Filter\FilterFactory::newInstance()
to returnFilterInterface
instead of non existingLocatorInterface
#14414 - 🛠 Fixed
Phalcon\Forms\Element\Select::addOption()
andPhalcon\Forms\Element\Select::setOption()
to returnElementInterface
instead of non existing Element #14414 - 🛠 Fixed
Phalcon\Forms\Manager::set()
to returnManager
instead of non existingFormManager
#14414 - 🛠 Fixed
Phalcon\Paginator\Adapter\AbstractAdapter::setCurrentPage()
Phalcon\Paginator\Adapter\AbstractAdapter::setLimit()
Phalcon\Paginator\Adapter\AbstractAdapter::setRepository()
to returnAdapterInterface
instead of non existingAdapter
#14414- 🛠 Fixed
Phalcon\Translate\TranslateFactory::set()
to returnAdapterInterface
instead of non existingAbstractAdapter
#14414 - 🛠 Fixed
Phalcon\Filter
to properly work with closures #14417 - 🛠 Fixed
Phalcon\Form::setAction()
throwing error when called inForm::initialize()
#14421 - 🛠 Fixed
Phalcon\Mvc\Model\Query\Lang::parsePHQL
return type hint fromstring
toarray
- 🛠 Fixed
NOT BETWEEN
support in PHQL #14253 - 🛠 Fixed
Phalcon\Storage\Adapter\Stream
to correctly serialize and unserialize data #14408 - 🛠 Fixed
Phalcon\Storage\Serializer\Json
to throw an exception if storing an object #14408 - 🛠 Fixed
Phalcon\Http\Message\ServerRequestFactory::load
to correctly handle superglobals that have not been defined #14426 - 🛠 Fixed
Phalcon\Forms\Form
to initialize attributes object if not initialized #14430 - 🛠 Fixed
Phalcon\Http\Message\ServerRequestFactory::load
to correctly detect the protocol passed from$_SERVER
#14432 - 🛠 Fixed
Phalcon\Cli\Router\Route
added missingPhalcon\Cli\Router\RouteInterface
- 🛠 Fixed incorrect return types on
Phalcon\Mvc\View\Engine\AbstractEngine::partial
andPhalcon\Mvc\View\Engine\EngineInterface::partial
#14429 - 🛠 Fixed
Phalcon\Firewall\Adapter\AbstractAdapter::getRoleCallback
andPhalcon\Firewall\Adapter\AbstractAdapter::setRoleCallback
to correctly accept and return aClosure
#14450 - 🛠 Fixed
Phalcon\Firewall\Adapter\AdapterInterface::getRoleCallback
andPhalcon\Firewall\Adapter\AbstractAdapter::setRoleCallback
to correctly accept and return aClosure
#14450 - 🛠 Fixed
Phalcon\Events\Event::__constructor
to correctly accept anobject
as thesource
parameter #14449 - 🛠 Fixed
Phalcon\Cache::checkKey()
added.
to key characters pattern #14457 - 🛠 Fixed
Phalcon\Mvc\Model\Manager
to store reusable related records correctly. #14444 - 🛠 Fixed
Phalcon\Mvc\Model::__call()
not to throw an exception when the return value isnull
for related records. #14444 - 🛠 Fixed
Phalcon\Logger\Adapter\Syslog::__construct()
incorrect receipt of theoption
from theoptions
parameter. #14470 - 🛠 Fixed
Phalcon\Events\Manager::fire
andPhalcon\Events\ManagerInterface::fire
correctly aligning parameters and types. #14477 - 🛠 Fixed
Phalcon\Translate\*
aligningparameters
asarray
with the interpolator calls. #14477 - 🛠 Fixed
Phalcon\Storage\AdapterFactory:newInstance
to return the correct interface #14481 - 🛠 Fixed
Phalcon\Mvc\Dispatcher:forward
to accept an array vs a mixed variable #14481 - ⚡️ Fixed
Phalcon\Mvc\Model::_doLowUpdate
andPhalcon\Mvc\Model::_doLowInsert
throwing errors about column mapping whenphalcon.orm.ignore_unknown_columns
is setOn
#14485
✂ Removed
- ➕ Added